﻿using System;    
using System.IO;
using System.Linq;
using System.Collections.Generic;
using Savviety.ServiceManager.Facade;
using Savviety.ServiceManager.Facade.Criteria;
using Savviety.ServiceManager.Facade.EnterpriseManagementClasses;
using Microsoft.EnterpriseManagement;
using Microsoft.EnterpriseManagement.Common;
using Microsoft.EnterpriseManagement.Configuration;
   
namespace Savviety.ServiceManager.Facade.ObjectProjection.Wrappers
{
			public class Microsoft_EnterpriseManagement_ServiceManager_Connector_OpsMgr
			{
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: Microsoft.EnterpriseManagement.ServiceManager.Connector.OpsMgr
			public class OpsMgrConnector_Config_Projection  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public OpsMgrConnector_Config_Projection(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("b5c4ea21-c827-ee85-9e89-62d508785b20");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("1178ed95-b43a-6722-cc81-95ad0068710a");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static OpsMgrConnector_Config_Projection Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, Microsoft_EnterpriseManagement_LinkingFramework_OpsMgrConnectorClass.GetManagementPackClass());	
					return new  OpsMgrConnector_Config_Projection(p);
				}
								
				public static OpsMgrConnector_Config_Projection Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("ServiceManager.LinkingFramework.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.LinkingFramework.DataSource']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("b5c4ea21-c827-ee85-9e89-62d508785b20"), property, id);
					return  new OpsMgrConnector_Config_Projection(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.String	
			Id 			: 2ec1da07-1dc8-2bbd-f03c-01de8cea5b86
			Description : Display name for a data provider	
*/
		public string DataProviderDisplayName
		{	
			set {@Object[new Guid("2ec1da07-1dc8-2bbd-f03c-01de8cea5b86")].Value = value;}
			get {
                    if(@Object[new Guid("2ec1da07-1dc8-2bbd-f03c-01de8cea5b86")]==null || @Object[new Guid("2ec1da07-1dc8-2bbd-f03c-01de8cea5b86")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("2ec1da07-1dc8-2bbd-f03c-01de8cea5b86")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: ed85f7bf-14ab-cc7b-e028-c9191cbc1396
			Description : Internal name for a data provider	
*/
		public string DataProviderName
		{	
			set {@Object[new Guid("ed85f7bf-14ab-cc7b-e028-c9191cbc1396")].Value = value;}
			get {
                    if(@Object[new Guid("ed85f7bf-14ab-cc7b-e028-c9191cbc1396")]==null || @Object[new Guid("ed85f7bf-14ab-cc7b-e028-c9191cbc1396")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("ed85f7bf-14ab-cc7b-e028-c9191cbc1396")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 97e296af-af3e-7507-fd7b-a9adcac50b39
			Description : Name for a data warehouse profile	
*/
		public string DatawarehouseProfileName
		{	
			set {@Object[new Guid("97e296af-af3e-7507-fd7b-a9adcac50b39")].Value = value;}
			get {
                    if(@Object[new Guid("97e296af-af3e-7507-fd7b-a9adcac50b39")]==null || @Object[new Guid("97e296af-af3e-7507-fd7b-a9adcac50b39")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("97e296af-af3e-7507-fd7b-a9adcac50b39")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 0a6e2ad0-d84a-9641-58e3-abba4511bb79
			Description : Connector Description	
*/
		public string Description
		{	
			set {@Object[new Guid("0a6e2ad0-d84a-9641-58e3-abba4511bb79")].Value = value;}
			get {
                    if(@Object[new Guid("0a6e2ad0-d84a-9641-58e3-abba4511bb79")]==null || @Object[new Guid("0a6e2ad0-d84a-9641-58e3-abba4511bb79")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("0a6e2ad0-d84a-9641-58e3-abba4511bb79")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: 89b6c2dd-4f07-0f86-a18d-72401ea57f32
			Description : Is Discovery Data Managed	
*/
		public bool? DiscoveryDataIsManaged
		{	
			set {@Object[new Guid("89b6c2dd-4f07-0f86-a18d-72401ea57f32")].Value = value;}
			get
			{
				if(@Object[new Guid("89b6c2dd-4f07-0f86-a18d-72401ea57f32")] != null)
				return  (bool?) @Object[new Guid("89b6c2dd-4f07-0f86-a18d-72401ea57f32")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Boolean	
			Id 			: 802345ee-2e7b-af9e-469f-612945ce3b81
			Description : Is Discovery Data Shared	
*/
		public bool? DiscoveryDataIsShared
		{	
			set {@Object[new Guid("802345ee-2e7b-af9e-469f-612945ce3b81")].Value = value;}
			get
			{
				if(@Object[new Guid("802345ee-2e7b-af9e-469f-612945ce3b81")] != null)
				return  (bool?) @Object[new Guid("802345ee-2e7b-af9e-469f-612945ce3b81")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: 071beb6b-2706-cf0c-646b-a0627949ed77
			Description : Indicates whether the data source is enabled	
*/
		public bool? Enabled
		{	
			set {@Object[new Guid("071beb6b-2706-cf0c-646b-a0627949ed77")].Value = value;}
			get
			{
				if(@Object[new Guid("071beb6b-2706-cf0c-646b-a0627949ed77")] != null)
				return  (bool?) @Object[new Guid("071beb6b-2706-cf0c-646b-a0627949ed77")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 29906075-e9fc-7bc4-487b-f964f91d6532
			Description : Connector ID	
*/
		public string Id
		{	
			set {@Object[new Guid("29906075-e9fc-7bc4-487b-f964f91d6532")].Value = value;}
			get {
                    if(@Object[new Guid("29906075-e9fc-7bc4-487b-f964f91d6532")]==null || @Object[new Guid("29906075-e9fc-7bc4-487b-f964f91d6532")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("29906075-e9fc-7bc4-487b-f964f91d6532")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: 04586e4f-8cb7-47e2-451d-5b4bbc46c0f2
			Description : Indicates whether Impersonation is enabled	
*/
		public bool? ImpersonationEnabled
		{	
			set {@Object[new Guid("04586e4f-8cb7-47e2-451d-5b4bbc46c0f2")].Value = value;}
			get
			{
				if(@Object[new Guid("04586e4f-8cb7-47e2-451d-5b4bbc46c0f2")] != null)
				return  (bool?) @Object[new Guid("04586e4f-8cb7-47e2-451d-5b4bbc46c0f2")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: fd39fd0e-a9df-9509-33b9-ba0f2d9bd215
			Description : Connector Name	
*/
		public string Name
		{	
			set {@Object[new Guid("fd39fd0e-a9df-9509-33b9-ba0f2d9bd215")].Value = value;}
			get {
                    if(@Object[new Guid("fd39fd0e-a9df-9509-33b9-ba0f2d9bd215")]==null || @Object[new Guid("fd39fd0e-a9df-9509-33b9-ba0f2d9bd215")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("fd39fd0e-a9df-9509-33b9-ba0f2d9bd215")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: ec211248-c0f6-9351-ce8f-91f1c1153cf3
			Description : Name for data reader profile	
*/
		public string ReaderProfileName
		{	
			set {@Object[new Guid("ec211248-c0f6-9351-ce8f-91f1c1153cf3")].Value = value;}
			get {
                    if(@Object[new Guid("ec211248-c0f6-9351-ce8f-91f1c1153cf3")]==null || @Object[new Guid("ec211248-c0f6-9351-ce8f-91f1c1153cf3")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("ec211248-c0f6-9351-ce8f-91f1c1153cf3")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 184ff35b-951e-c7c4-049b-62e9e34c30f3
			Description : Reserved	
*/
		public string Reserved
		{	
			set {@Object[new Guid("184ff35b-951e-c7c4-049b-62e9e34c30f3")].Value = value;}
			get {
                    if(@Object[new Guid("184ff35b-951e-c7c4-049b-62e9e34c30f3")]==null || @Object[new Guid("184ff35b-951e-c7c4-049b-62e9e34c30f3")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("184ff35b-951e-c7c4-049b-62e9e34c30f3")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d4d65911-a399-9146-16aa-d726cb1c1a1b
			Description : Name for a data synchronization solution	
*/
		public string SolutionName
		{	
			set {@Object[new Guid("d4d65911-a399-9146-16aa-d726cb1c1a1b")].Value = value;}
			get {
                    if(@Object[new Guid("d4d65911-a399-9146-16aa-d726cb1c1a1b")]==null || @Object[new Guid("d4d65911-a399-9146-16aa-d726cb1c1a1b")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d4d65911-a399-9146-16aa-d726cb1c1a1b")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Int32	
			Id 			: a58ca650-77b3-34cf-24a9-2fb1fb6a5e19
			Description : Interval for data synchronization	
*/
		public int SyncInterval
		{	
			set {@Object[new Guid("a58ca650-77b3-34cf-24a9-2fb1fb6a5e19")].Value = value;}
			get {
                    if(@Object[new Guid("a58ca650-77b3-34cf-24a9-2fb1fb6a5e19")]==null || @Object[new Guid("a58ca650-77b3-34cf-24a9-2fb1fb6a5e19")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("a58ca650-77b3-34cf-24a9-2fb1fb6a5e19")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: b712e0ea-ef36-a12f-4848-b953fb9a511e
			Description : Indicates data synchronization will be started immediately	
*/
		public bool? SyncNow
		{	
			set {@Object[new Guid("b712e0ea-ef36-a12f-4848-b953fb9a511e")].Value = value;}
			get
			{
				if(@Object[new Guid("b712e0ea-ef36-a12f-4848-b953fb9a511e")] != null)
				return  (bool?) @Object[new Guid("b712e0ea-ef36-a12f-4848-b953fb9a511e")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.DateTime	
			Id 			: 3b968d84-5783-b073-a9d5-122ad0ae6456
			Description : Time for data synchronization	
*/
		public DateTime? SyncTime
		{	
			set {@Object[new Guid("3b968d84-5783-b073-a9d5-122ad0ae6456")].Value = value;}
			get {
                    if(@Object[new Guid("3b968d84-5783-b073-a9d5-122ad0ae6456")]==null || @Object[new Guid("3b968d84-5783-b073-a9d5-122ad0ae6456")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("3b968d84-5783-b073-a9d5-122ad0ae6456")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: a22cd6fc-e822-c134-3ff4-158cd21d3771
			Description : Type of data synchronization	
*/
		public ManagementPackEnumeration SyncType
		{	
			set {@Object[new Guid("a22cd6fc-e822-c134-3ff4-158cd21d3771")].Value = value;}
			get
			{
				if(@Object[new Guid("a22cd6fc-e822-c134-3ff4-158cd21d3771")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("a22cd6fc-e822-c134-3ff4-158cd21d3771")].Value;
				else
				return null;
			}
		}
#endregion
#region Relationships
		public void AddConfig(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = Microsoft_EnterpriseManagement_LinkingFramework_OpsMgrConnectorClass.Relationships.Microsoft_EnterpriseManagement_LinkingFramework_OpsMgrConnectorHostsConfig;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> ConfigProjection  
		{
			get{ return emop["Config"];}
		}
				
#endregion
		}// end tp class
		}// end mp class
			public class Microsoft_EnterpriseManagement_ServiceManager_UI_Administration
			{
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: Microsoft.EnterpriseManagement.ServiceManager.UI.Administration
			public class System_NotificationChannel_SMTP_ProjectionType  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public System_NotificationChannel_SMTP_ProjectionType(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("6df29a42-b778-89b6-d4f2-d4ce3dbdb1ac");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("151cd574-c975-0820-0ab3-f68d5632fbc8");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static System_NotificationChannel_SMTP_ProjectionType Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, System_Notification_Channel_SMTPClass.GetManagementPackClass());	
					return new  System_NotificationChannel_SMTP_ProjectionType(p);
				}
								
				public static System_NotificationChannel_SMTP_ProjectionType Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.Notifications.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.Notification.Channel']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("6df29a42-b778-89b6-d4f2-d4ce3dbdb1ac"), property, id);
					return  new System_NotificationChannel_SMTP_ProjectionType(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: 02fba5ee-7c97-fdd5-8da9-69f99b9d1d20
			Description : Is Enabled	
*/
		public bool? IsEnabled
		{	
			set {@Object[new Guid("02fba5ee-7c97-fdd5-8da9-69f99b9d1d20")].Value = value;}
			get
			{
				if(@Object[new Guid("02fba5ee-7c97-fdd5-8da9-69f99b9d1d20")] != null)
				return  (bool?) @Object[new Guid("02fba5ee-7c97-fdd5-8da9-69f99b9d1d20")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Int32	
			Id 			: 762772bb-0fdb-37f0-724c-fe6a5fe8e912
			Description : Retry Interval Seconds	
*/
		public int RetryIntervalSeconds
		{	
			set {@Object[new Guid("762772bb-0fdb-37f0-724c-fe6a5fe8e912")].Value = value;}
			get {
                    if(@Object[new Guid("762772bb-0fdb-37f0-724c-fe6a5fe8e912")]==null || @Object[new Guid("762772bb-0fdb-37f0-724c-fe6a5fe8e912")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("762772bb-0fdb-37f0-724c-fe6a5fe8e912")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d933c383-a63c-7bcf-d3d0-a7892b5b94f9
			Description : Return Address	
*/
		public string ReturnAddress
		{	
			set {@Object[new Guid("d933c383-a63c-7bcf-d3d0-a7892b5b94f9")].Value = value;}
			get {
                    if(@Object[new Guid("d933c383-a63c-7bcf-d3d0-a7892b5b94f9")]==null || @Object[new Guid("d933c383-a63c-7bcf-d3d0-a7892b5b94f9")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d933c383-a63c-7bcf-d3d0-a7892b5b94f9")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 4ac88436-900e-1c4d-3344-6a965d1fc06e
			Description : Run As Account	
*/
		public string RunAsAccount
		{	
			set {@Object[new Guid("4ac88436-900e-1c4d-3344-6a965d1fc06e")].Value = value;}
			get {
                    if(@Object[new Guid("4ac88436-900e-1c4d-3344-6a965d1fc06e")]==null || @Object[new Guid("4ac88436-900e-1c4d-3344-6a965d1fc06e")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("4ac88436-900e-1c4d-3344-6a965d1fc06e")].Value; 
                    
                }		
			
		}
#endregion
#region Relationships
		public void AddConfigurationSources(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_Notification_Channel_SMTPClass.Relationships.System_Notification_ChannelHasConfigurationSource;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> ConfigurationSourcesProjection  
		{
			get{ return emop["Configuration"];}
		}
				
#endregion
		}// end tp class
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: Microsoft.EnterpriseManagement.ServiceManager.UI.Administration
			public class System_UserPreference_ViewPersonalization_ProjectionType  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public System_UserPreference_ViewPersonalization_ProjectionType(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("95966ef3-81c1-70b1-705b-fdafd8ecad82");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("151cd574-c975-0820-0ab3-f68d5632fbc8");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static System_UserPreference_ViewPersonalization_ProjectionType Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, System_UserPreference_ViewPersonalizationClass.GetManagementPackClass());	
					return new  System_UserPreference_ViewPersonalization_ProjectionType(p);
				}
								
				public static System_UserPreference_ViewPersonalization_ProjectionType Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.SupportingItem.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.UserPreference']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("95966ef3-81c1-70b1-705b-fdafd8ecad82"), property, id);
					return  new System_UserPreference_ViewPersonalization_ProjectionType(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d749bb76-4b74-1d28-46e0-a611d3f147f0
			Description : Personalization XML	
*/
		public string PersonalizationXml
		{	
			set {@Object[new Guid("d749bb76-4b74-1d28-46e0-a611d3f147f0")].Value = value;}
			get {
                    if(@Object[new Guid("d749bb76-4b74-1d28-46e0-a611d3f147f0")]==null || @Object[new Guid("d749bb76-4b74-1d28-46e0-a611d3f147f0")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d749bb76-4b74-1d28-46e0-a611d3f147f0")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Guid	
			Id 			: a918feb0-8ad0-1e9d-2b45-f34e717ea965
			Description : User ID	
*/
		public Guid UserID
		{	
			set {@Object[new Guid("a918feb0-8ad0-1e9d-2b45-f34e717ea965")].Value = value;}
			get {
                    if(@Object[new Guid("a918feb0-8ad0-1e9d-2b45-f34e717ea965")]==null || @Object[new Guid("a918feb0-8ad0-1e9d-2b45-f34e717ea965")].Value==null) 
                        return default(Guid) ;    
                    return (Guid) @Object[new Guid("a918feb0-8ad0-1e9d-2b45-f34e717ea965")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Guid	
			Id 			: e76344b4-f631-faf9-7b61-b181474509bd
			Description : View ID	
*/
		public Guid ViewID
		{	
			set {@Object[new Guid("e76344b4-f631-faf9-7b61-b181474509bd")].Value = value;}
			get {
                    if(@Object[new Guid("e76344b4-f631-faf9-7b61-b181474509bd")]==null || @Object[new Guid("e76344b4-f631-faf9-7b61-b181474509bd")].Value==null) 
                        return default(Guid) ;    
                    return (Guid) @Object[new Guid("e76344b4-f631-faf9-7b61-b181474509bd")].Value; 
                    
                }		
			
		}
#endregion
#region Relationships
         
        public IComposableProjection UserProjection
		{
			get{ return emop["User"].FirstOrDefault(); }
		}    
            
		public string UserName  
		{
			get{
                var projection = emop["User"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddUser(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_UserPreference_ViewPersonalizationClass.Relationships.System_UserHasPreference;
					
			emop.Add(value, endPoint.Target);
		}
		
#endregion
		}// end tp class
		}// end mp class
			public class Microsoft_SystemCenter_ServiceManager_Portal
			{
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: Microsoft.SystemCenter.ServiceManager.Portal
			public class Microsoft_SystemCenter_ServiceManager_PackageInfoProjection  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public Microsoft_SystemCenter_ServiceManager_PackageInfoProjection(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("777a367d-7752-338e-22c6-13ae4b9245f2");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("2d5e77d8-1385-c107-542f-a20dbe9540a2");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static Microsoft_SystemCenter_ServiceManager_PackageInfoProjection Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, Microsoft_SystemCenter_ConfigurationManager_PackageClass.GetManagementPackClass());	
					return new  Microsoft_SystemCenter_ServiceManager_PackageInfoProjection(p);
				}
								
				public static Microsoft_SystemCenter_ServiceManager_PackageInfoProjection Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.ConfigItem']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("777a367d-7752-338e-22c6-13ae4b9245f2"), property, id);
					return  new Microsoft_SystemCenter_ServiceManager_PackageInfoProjection(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.Enum	
			Id 			: a6b7ea8d-9423-8529-cb21-87ac1a21fdcb
			Description : Asset status	
*/
		public ManagementPackEnumeration AssetStatus
		{	
			set {@Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")].Value = value;}
			get
			{
				if(@Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 2a196e08-aa5b-6005-5234-01c79db36311
			Description : Description	
*/
		public string Description
		{	
			set {@Object[new Guid("2a196e08-aa5b-6005-5234-01c79db36311")].Value = value;}
			get {
                    if(@Object[new Guid("2a196e08-aa5b-6005-5234-01c79db36311")]==null || @Object[new Guid("2a196e08-aa5b-6005-5234-01c79db36311")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("2a196e08-aa5b-6005-5234-01c79db36311")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: aaf45a9b-e1e9-02c8-a6fa-e2138f8364e6
			Description : Language	
*/
		public string Language
		{	
			set {@Object[new Guid("aaf45a9b-e1e9-02c8-a6fa-e2138f8364e6")].Value = value;}
			get {
                    if(@Object[new Guid("aaf45a9b-e1e9-02c8-a6fa-e2138f8364e6")]==null || @Object[new Guid("aaf45a9b-e1e9-02c8-a6fa-e2138f8364e6")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("aaf45a9b-e1e9-02c8-a6fa-e2138f8364e6")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: f6310527-cea4-5636-f2e4-44657fdadacd
			Description : Manufacturer	
*/
		public string Manufacturer
		{	
			set {@Object[new Guid("f6310527-cea4-5636-f2e4-44657fdadacd")].Value = value;}
			get {
                    if(@Object[new Guid("f6310527-cea4-5636-f2e4-44657fdadacd")]==null || @Object[new Guid("f6310527-cea4-5636-f2e4-44657fdadacd")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("f6310527-cea4-5636-f2e4-44657fdadacd")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: a601a7a4-3593-8951-0612-3e4921dedfae
			Description : Name	
*/
		public string Name
		{	
			set {@Object[new Guid("a601a7a4-3593-8951-0612-3e4921dedfae")].Value = value;}
			get {
                    if(@Object[new Guid("a601a7a4-3593-8951-0612-3e4921dedfae")]==null || @Object[new Guid("a601a7a4-3593-8951-0612-3e4921dedfae")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("a601a7a4-3593-8951-0612-3e4921dedfae")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 55124dce-750d-bd54-4b92-d1fddf99adec
			Description : Notes	
*/
		public string Notes
		{	
			set {@Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value = value;}
			get {
                    if(@Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")]==null || @Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 11927069-6957-dfcf-a277-08a784221325
			Description : Object status	
*/
		public ManagementPackEnumeration ObjectStatus
		{	
			set {@Object[new Guid("11927069-6957-dfcf-a277-08a784221325")].Value = value;}
			get
			{
				if(@Object[new Guid("11927069-6957-dfcf-a277-08a784221325")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("11927069-6957-dfcf-a277-08a784221325")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 852c290d-2773-903f-95d7-74fda9897d44
			Description : Package ID	
*/
		public string PackageID
		{	
			set {@Object[new Guid("852c290d-2773-903f-95d7-74fda9897d44")].Value = value;}
			get {
                    if(@Object[new Guid("852c290d-2773-903f-95d7-74fda9897d44")]==null || @Object[new Guid("852c290d-2773-903f-95d7-74fda9897d44")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("852c290d-2773-903f-95d7-74fda9897d44")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: 9e72c2ee-4f3f-2e10-73f0-a450511f4edc
			Description : Published package	
*/
		public bool? Publish
		{	
			set {@Object[new Guid("9e72c2ee-4f3f-2e10-73f0-a450511f4edc")].Value = value;}
			get
			{
				if(@Object[new Guid("9e72c2ee-4f3f-2e10-73f0-a450511f4edc")] != null)
				return  (bool?) @Object[new Guid("9e72c2ee-4f3f-2e10-73f0-a450511f4edc")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: b06b2fef-6d18-36c5-3fe3-a434e0c8d5d8
			Description : The site code of the site where the package originated	
*/
		public string SourceSite
		{	
			set {@Object[new Guid("b06b2fef-6d18-36c5-3fe3-a434e0c8d5d8")].Value = value;}
			get {
                    if(@Object[new Guid("b06b2fef-6d18-36c5-3fe3-a434e0c8d5d8")]==null || @Object[new Guid("b06b2fef-6d18-36c5-3fe3-a434e0c8d5d8")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("b06b2fef-6d18-36c5-3fe3-a434e0c8d5d8")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 100f2574-0865-c797-c86c-97e4879491a8
			Description : Version	
*/
		public string Version
		{	
			set {@Object[new Guid("100f2574-0865-c797-c86c-97e4879491a8")].Value = value;}
			get {
                    if(@Object[new Guid("100f2574-0865-c797-c86c-97e4879491a8")]==null || @Object[new Guid("100f2574-0865-c797-c86c-97e4879491a8")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("100f2574-0865-c797-c86c-97e4879491a8")].Value; 
                    
                }		
			
		}
#endregion
#region Relationships
         
        public IComposableProjection DeploymentProcessProjection
		{
			get{ return emop["DeploymentProcess"].FirstOrDefault(); }
		}    
            
		public string DeploymentProcessName  
		{
			get{
                var projection = emop["DeploymentProcess"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddDeploymentProcess(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = Microsoft_SystemCenter_ConfigurationManager_PackageClass.Relationships.Microsoft_SystemCenter_ServiceManager_PackageDeployedByProcess;
					
			emop.Add(value, endPoint.Target);
		}
		
         
        public IComposableProjection ProgramAssignedToPackageProjection
		{
			get{ return emop["AssignedProgram"].FirstOrDefault(); }
		}    
            
		public string ProgramAssignedToPackageName  
		{
			get{
                var projection = emop["AssignedProgram"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddProgramAssignedToPackage(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = Microsoft_SystemCenter_ConfigurationManager_PackageClass.Relationships.Microsoft_SystemCenter_ServiceManager_Package_AssignedProgram;
					
			emop.Add(value, endPoint.Target);
		}
		
		public void AddPrograms(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = Microsoft_SystemCenter_ConfigurationManager_PackageClass.Relationships.Microsoft_SystemCenter_ConfigurationManager_PackageHostsProgram;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> ProgramsProjection  
		{
			get{ return emop["Program"];}
		}
				
#endregion
		}// end tp class
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: Microsoft.SystemCenter.ServiceManager.Portal
			public class System_WorkItem_ChangeRequestAnalystPortalProjection  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public System_WorkItem_ChangeRequestAnalystPortalProjection(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("06ce15e4-4c34-cd0f-29df-592a31152eee");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("2d5e77d8-1385-c107-542f-a20dbe9540a2");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static System_WorkItem_ChangeRequestAnalystPortalProjection Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, System_WorkItem_ChangeRequestClass.GetManagementPackClass());	
					return new  System_WorkItem_ChangeRequestAnalystPortalProjection(p);
				}
								
				public static System_WorkItem_ChangeRequestAnalystPortalProjection Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.WorkItem.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.WorkItem']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("06ce15e4-4c34-cd0f-29df-592a31152eee"), property, id);
					return  new System_WorkItem_ChangeRequestAnalystPortalProjection(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.DateTime	
			Id 			: 665ed498-2551-7559-dce8-493e1ea171df
			Description : Actual end date	
*/
		public DateTime? ActualEndDate
		{	
			set {@Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value = value;}
			get {
                    if(@Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")]==null || @Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: d3c9aa55-bbc0-964e-716b-99defdac4405
			Description : Actual start date	
*/
		public DateTime? ActualStartDate
		{	
			set {@Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value = value;}
			get {
                    if(@Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")]==null || @Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 307cfd9e-4731-ebe2-3d95-808eba544174
			Description : Area	
*/
		public ManagementPackEnumeration Area
		{	
			set {@Object[new Guid("307cfd9e-4731-ebe2-3d95-808eba544174")].Value = value;}
			get
			{
				if(@Object[new Guid("307cfd9e-4731-ebe2-3d95-808eba544174")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("307cfd9e-4731-ebe2-3d95-808eba544174")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: d5b20722-d119-6702-3308-f987bd5aea75
			Description : Back out Plan	
*/
		public string BackoutPlan
		{	
			set {@Object[new Guid("d5b20722-d119-6702-3308-f987bd5aea75")].Value = value;}
			get {
                    if(@Object[new Guid("d5b20722-d119-6702-3308-f987bd5aea75")]==null || @Object[new Guid("d5b20722-d119-6702-3308-f987bd5aea75")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d5b20722-d119-6702-3308-f987bd5aea75")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 0baca6fa-4afe-ea7f-a060-6ee31d302152
			Description : Category	
*/
		public ManagementPackEnumeration Category
		{	
			set {@Object[new Guid("0baca6fa-4afe-ea7f-a060-6ee31d302152")].Value = value;}
			get
			{
				if(@Object[new Guid("0baca6fa-4afe-ea7f-a060-6ee31d302152")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("0baca6fa-4afe-ea7f-a060-6ee31d302152")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: d57cb7bc-d1d5-9614-0fe5-4002129da88b
			Description : Alternate contact method	
*/
		public string ContactMethod
		{	
			set {@Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value = value;}
			get {
                    if(@Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")]==null || @Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: ae5c5126-8937-8bdd-11f8-a7641bc06645
			Description : Created date	
*/
		public DateTime? CreatedDate
		{	
			set {@Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value = value;}
			get {
                    if(@Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")]==null || @Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: e5162c95-9469-924c-2298-9e351e0dc383
			Description : Description	
*/
		public string Description
		{	
			set {@Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value = value;}
			get {
                    if(@Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")]==null || @Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 28b1c58f-aefa-a449-7496-4805186bd94f
			Description : Work item ID	
*/
		public string Id
		{	
			set {@Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value = value;}
			get {
                    if(@Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")]==null || @Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 767a95c9-96ca-4a43-47dd-62948ac34846
			Description : Impact	
*/
		public ManagementPackEnumeration Impact
		{	
			set {@Object[new Guid("767a95c9-96ca-4a43-47dd-62948ac34846")].Value = value;}
			get
			{
				if(@Object[new Guid("767a95c9-96ca-4a43-47dd-62948ac34846")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("767a95c9-96ca-4a43-47dd-62948ac34846")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: b90e5f89-1e3a-e10f-f6d6-eeee684f896f
			Description : Implementation Plan	
*/
		public string ImplementationPlan
		{	
			set {@Object[new Guid("b90e5f89-1e3a-e10f-f6d6-eeee684f896f")].Value = value;}
			get {
                    if(@Object[new Guid("b90e5f89-1e3a-e10f-f6d6-eeee684f896f")]==null || @Object[new Guid("b90e5f89-1e3a-e10f-f6d6-eeee684f896f")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("b90e5f89-1e3a-e10f-f6d6-eeee684f896f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 9d2434e4-4a09-fcee-81fa-78a3b12d806e
			Description : Implementation Results	
*/
		public ManagementPackEnumeration ImplementationResults
		{	
			set {@Object[new Guid("9d2434e4-4a09-fcee-81fa-78a3b12d806e")].Value = value;}
			get
			{
				if(@Object[new Guid("9d2434e4-4a09-fcee-81fa-78a3b12d806e")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("9d2434e4-4a09-fcee-81fa-78a3b12d806e")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 5cc7ed69-4f78-3d14-1d4d-b17616a2b566
			Description : Notes	
*/
		public string Notes
		{	
			set {@Object[new Guid("5cc7ed69-4f78-3d14-1d4d-b17616a2b566")].Value = value;}
			get {
                    if(@Object[new Guid("5cc7ed69-4f78-3d14-1d4d-b17616a2b566")]==null || @Object[new Guid("5cc7ed69-4f78-3d14-1d4d-b17616a2b566")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("5cc7ed69-4f78-3d14-1d4d-b17616a2b566")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d4e89164-5c63-e88b-b693-5d65244b2529
			Description : Post Implementation Review	
*/
		public string PostImplementationReview
		{	
			set {@Object[new Guid("d4e89164-5c63-e88b-b693-5d65244b2529")].Value = value;}
			get {
                    if(@Object[new Guid("d4e89164-5c63-e88b-b693-5d65244b2529")]==null || @Object[new Guid("d4e89164-5c63-e88b-b693-5d65244b2529")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d4e89164-5c63-e88b-b693-5d65244b2529")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: a9934ada-3307-1e41-b851-f2d9503dbbbe
			Description : Priority	
*/
		public ManagementPackEnumeration Priority
		{	
			set {@Object[new Guid("a9934ada-3307-1e41-b851-f2d9503dbbbe")].Value = value;}
			get
			{
				if(@Object[new Guid("a9934ada-3307-1e41-b851-f2d9503dbbbe")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("a9934ada-3307-1e41-b851-f2d9503dbbbe")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 25f2d99d-2a86-a3f6-5157-8672def02553
			Description : Reason	
*/
		public string Reason
		{	
			set {@Object[new Guid("25f2d99d-2a86-a3f6-5157-8672def02553")].Value = value;}
			get {
                    if(@Object[new Guid("25f2d99d-2a86-a3f6-5157-8672def02553")]==null || @Object[new Guid("25f2d99d-2a86-a3f6-5157-8672def02553")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("25f2d99d-2a86-a3f6-5157-8672def02553")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: 4cb0bdbc-5092-6c7d-1bd3-7fda9df6afd9
			Description : Required By Date	
*/
		public DateTime? RequiredByDate
		{	
			set {@Object[new Guid("4cb0bdbc-5092-6c7d-1bd3-7fda9df6afd9")].Value = value;}
			get {
                    if(@Object[new Guid("4cb0bdbc-5092-6c7d-1bd3-7fda9df6afd9")]==null || @Object[new Guid("4cb0bdbc-5092-6c7d-1bd3-7fda9df6afd9")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("4cb0bdbc-5092-6c7d-1bd3-7fda9df6afd9")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 5e41a9d0-7d74-7c5a-e56e-c72292d9be20
			Description : Risk	
*/
		public ManagementPackEnumeration Risk
		{	
			set {@Object[new Guid("5e41a9d0-7d74-7c5a-e56e-c72292d9be20")].Value = value;}
			get
			{
				if(@Object[new Guid("5e41a9d0-7d74-7c5a-e56e-c72292d9be20")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("5e41a9d0-7d74-7c5a-e56e-c72292d9be20")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 596bc015-b878-950a-12ac-96ed5ee70336
			Description : Risk Assessment Plan	
*/
		public string RiskAssessmentPlan
		{	
			set {@Object[new Guid("596bc015-b878-950a-12ac-96ed5ee70336")].Value = value;}
			get {
                    if(@Object[new Guid("596bc015-b878-950a-12ac-96ed5ee70336")]==null || @Object[new Guid("596bc015-b878-950a-12ac-96ed5ee70336")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("596bc015-b878-950a-12ac-96ed5ee70336")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: 1d59dc56-995b-1884-beef-7663a0103e28
			Description : Scheduled end date	
*/
		public DateTime? ScheduledEndDate
		{	
			set {@Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value = value;}
			get {
                    if(@Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")]==null || @Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: fb3b75ce-5483-b5a0-7498-10c585cef3b4
			Description : Scheduled start date	
*/
		public DateTime? ScheduledStartDate
		{	
			set {@Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value = value;}
			get {
                    if(@Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")]==null || @Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 23659689-c1a7-98b3-bf1c-f352df014a4a
			Description : Status	
*/
		public ManagementPackEnumeration Status
		{	
			set {@Object[new Guid("23659689-c1a7-98b3-bf1c-f352df014a4a")].Value = value;}
			get
			{
				if(@Object[new Guid("23659689-c1a7-98b3-bf1c-f352df014a4a")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("23659689-c1a7-98b3-bf1c-f352df014a4a")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: daa7213f-a107-a1a4-964d-1b21af0ec8fb
			Description : Template Identifier	
*/
		public string TemplateId
		{	
			set {@Object[new Guid("daa7213f-a107-a1a4-964d-1b21af0ec8fb")].Value = value;}
			get {
                    if(@Object[new Guid("daa7213f-a107-a1a4-964d-1b21af0ec8fb")]==null || @Object[new Guid("daa7213f-a107-a1a4-964d-1b21af0ec8fb")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("daa7213f-a107-a1a4-964d-1b21af0ec8fb")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 49e207e5-44b7-2ccb-c062-f7c50db03b57
			Description : Test Plan	
*/
		public string TestPlan
		{	
			set {@Object[new Guid("49e207e5-44b7-2ccb-c062-f7c50db03b57")].Value = value;}
			get {
                    if(@Object[new Guid("49e207e5-44b7-2ccb-c062-f7c50db03b57")]==null || @Object[new Guid("49e207e5-44b7-2ccb-c062-f7c50db03b57")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("49e207e5-44b7-2ccb-c062-f7c50db03b57")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 029dd446-c76c-ab37-a105-235da4f979dd
			Description : Title	
*/
		public string Title
		{	
			set {@Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value = value;}
			get {
                    if(@Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")]==null || @Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value; 
                    
                }		
			
		}
#endregion
#region Relationships
		public void AddActivity(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_ChangeRequestClass.Relationships.System_WorkItemContainsActivity;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> ActivityProjection  
		{
			get{ return emop["Activity"];}
		}
				
         
        public IComposableProjection CreatedByProjection
		{
			get{ return emop["CreatedWorkItem"].FirstOrDefault(); }
		}    
            
		public string CreatedByName  
		{
			get{
                var projection = emop["CreatedWorkItem"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddCreatedBy(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_WorkItem_ChangeRequestClass.Relationships.System_WorkItemCreatedByUser;
					
			emop.Add(value, endPoint.Target);
		}
		
         
        public IComposableProjection AssignedToProjection
		{
			get{ return emop["AssignedWorkItem"].FirstOrDefault(); }
		}    
            
		public string AssignedToName  
		{
			get{
                var projection = emop["AssignedWorkItem"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddAssignedTo(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_WorkItem_ChangeRequestClass.Relationships.System_WorkItemAssignedToUser;
					
			emop.Add(value, endPoint.Target);
		}
		
		public void AddRelatedConfigItem(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_ChangeRequestClass.Relationships.System_WorkItemRelatesToConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> RelatedConfigItemProjection  
		{
			get{ return emop["RelatesToConfigItem"];}
		}
				
		public void AddAboutConfigItem(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_ChangeRequestClass.Relationships.System_WorkItemAboutConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> AboutConfigItemProjection  
		{
			get{ return emop["HasRelatedWorkItems"];}
		}
				
		public void AddFileAttachment(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_ChangeRequestClass.Relationships.System_WorkItemHasFileAttachment;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> FileAttachmentProjection  
		{
			get{ return emop["FileAttachment"];}
		}
				
#endregion
		}// end tp class
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: Microsoft.SystemCenter.ServiceManager.Portal
			public class Microsoft_SystemCenter_ServiceManager_DeploymentProcess_Projection  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public Microsoft_SystemCenter_ServiceManager_DeploymentProcess_Projection(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("d3d8fae3-bd7a-4877-07c4-5d36f711a982");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("2d5e77d8-1385-c107-542f-a20dbe9540a2");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static Microsoft_SystemCenter_ServiceManager_DeploymentProcess_Projection Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, Microsoft_SystemCenter_ServiceManager_SoftwareDeployment_ProcessClass.GetManagementPackClass());	
					return new  Microsoft_SystemCenter_ServiceManager_DeploymentProcess_Projection(p);
				}
								
				public static Microsoft_SystemCenter_ServiceManager_DeploymentProcess_Projection Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.AdminItem.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.AdminItem']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("d3d8fae3-bd7a-4877-07c4-5d36f711a982"), property, id);
					return  new Microsoft_SystemCenter_ServiceManager_DeploymentProcess_Projection(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.Guid	
			Id 			: cd680ce1-16c8-19cf-7b32-67bab1f08757
			Description : Change request template Id	
*/
		public Guid ChangeRequestTemplateId
		{	
			set {@Object[new Guid("cd680ce1-16c8-19cf-7b32-67bab1f08757")].Value = value;}
			get {
                    if(@Object[new Guid("cd680ce1-16c8-19cf-7b32-67bab1f08757")]==null || @Object[new Guid("cd680ce1-16c8-19cf-7b32-67bab1f08757")].Value==null) 
                        return default(Guid) ;    
                    return (Guid) @Object[new Guid("cd680ce1-16c8-19cf-7b32-67bab1f08757")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: b7ffbc76-511d-06fa-6031-bd45eecba3f0
			Description : Change request template name	
*/
		public string ChangeRequestTemplateName
		{	
			set {@Object[new Guid("b7ffbc76-511d-06fa-6031-bd45eecba3f0")].Value = value;}
			get {
                    if(@Object[new Guid("b7ffbc76-511d-06fa-6031-bd45eecba3f0")]==null || @Object[new Guid("b7ffbc76-511d-06fa-6031-bd45eecba3f0")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("b7ffbc76-511d-06fa-6031-bd45eecba3f0")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d1af8bcf-1b0f-3156-8c2c-b41d985e7886
			Description : >Description of Software deployment process	
*/
		public string Description
		{	
			set {@Object[new Guid("d1af8bcf-1b0f-3156-8c2c-b41d985e7886")].Value = value;}
			get {
                    if(@Object[new Guid("d1af8bcf-1b0f-3156-8c2c-b41d985e7886")]==null || @Object[new Guid("d1af8bcf-1b0f-3156-8c2c-b41d985e7886")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d1af8bcf-1b0f-3156-8c2c-b41d985e7886")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 0b6602de-778e-b7d2-edde-b9808398ed85
			Description : Software deployment process Id	
*/
		public string ProcessId
		{	
			set {@Object[new Guid("0b6602de-778e-b7d2-edde-b9808398ed85")].Value = value;}
			get {
                    if(@Object[new Guid("0b6602de-778e-b7d2-edde-b9808398ed85")]==null || @Object[new Guid("0b6602de-778e-b7d2-edde-b9808398ed85")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("0b6602de-778e-b7d2-edde-b9808398ed85")].Value; 
                    
                }		
			
		}
#endregion
#region Relationships
		public void AddPackages(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = Microsoft_SystemCenter_ServiceManager_SoftwareDeployment_ProcessClass.Relationships.Microsoft_SystemCenter_ServiceManager_PackageDeployedByProcess;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> PackagesProjection  
		{
			get{ return emop["PackageInfo"];}
		}
				
#endregion
		}// end tp class
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: Microsoft.SystemCenter.ServiceManager.Portal
			public class System_WorkItem_IncidentPortalProjection  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public System_WorkItem_IncidentPortalProjection(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("180f5706-3d05-4bbc-ca2d-c33624fdb3c8");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("2d5e77d8-1385-c107-542f-a20dbe9540a2");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static System_WorkItem_IncidentPortalProjection Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, System_WorkItem_IncidentClass.GetManagementPackClass());	
					return new  System_WorkItem_IncidentPortalProjection(p);
				}
								
				public static System_WorkItem_IncidentPortalProjection Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.WorkItem.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.WorkItem.TroubleTicket']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("180f5706-3d05-4bbc-ca2d-c33624fdb3c8"), property, id);
					return  new System_WorkItem_IncidentPortalProjection(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.DateTime	
			Id 			: 665ed498-2551-7559-dce8-493e1ea171df
			Description : Actual end date	
*/
		public DateTime? ActualEndDate
		{	
			set {@Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value = value;}
			get {
                    if(@Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")]==null || @Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: d3c9aa55-bbc0-964e-716b-99defdac4405
			Description : Actual start date	
*/
		public DateTime? ActualStartDate
		{	
			set {@Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value = value;}
			get {
                    if(@Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")]==null || @Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: c7a6ab7a-0b74-6848-02f7-79f7245662d1
			Description : Incident classification category	
*/
		public ManagementPackEnumeration Classification
		{	
			set {@Object[new Guid("c7a6ab7a-0b74-6848-02f7-79f7245662d1")].Value = value;}
			get
			{
				if(@Object[new Guid("c7a6ab7a-0b74-6848-02f7-79f7245662d1")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("c7a6ab7a-0b74-6848-02f7-79f7245662d1")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.DateTime	
			Id 			: 1d859e5b-0686-3ecc-0ef1-4cfce89a73fb
			Description : Closed date	
*/
		public DateTime? ClosedDate
		{	
			set {@Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")].Value = value;}
			get {
                    if(@Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")]==null || @Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d57cb7bc-d1d5-9614-0fe5-4002129da88b
			Description : Alternate contact method	
*/
		public string ContactMethod
		{	
			set {@Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value = value;}
			get {
                    if(@Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")]==null || @Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: ae5c5126-8937-8bdd-11f8-a7641bc06645
			Description : Created date	
*/
		public DateTime? CreatedDate
		{	
			set {@Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value = value;}
			get {
                    if(@Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")]==null || @Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: e5162c95-9469-924c-2298-9e351e0dc383
			Description : Description	
*/
		public string Description
		{	
			set {@Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value = value;}
			get {
                    if(@Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")]==null || @Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: 4e81b48c-0de6-9fc6-b0b8-f3ae96bf2df6
			Description : Escalated	
*/
		public bool? Escalated
		{	
			set {@Object[new Guid("4e81b48c-0de6-9fc6-b0b8-f3ae96bf2df6")].Value = value;}
			get
			{
				if(@Object[new Guid("4e81b48c-0de6-9fc6-b0b8-f3ae96bf2df6")] != null)
				return  (bool?) @Object[new Guid("4e81b48c-0de6-9fc6-b0b8-f3ae96bf2df6")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Boolean	
			Id 			: 1aab055e-b590-e9c8-c7e0-a99ad06443c7
			Description : Has created knowledge article	
*/
		public bool? HasCreatedKnowledgeArticle
		{	
			set {@Object[new Guid("1aab055e-b590-e9c8-c7e0-a99ad06443c7")].Value = value;}
			get
			{
				if(@Object[new Guid("1aab055e-b590-e9c8-c7e0-a99ad06443c7")] != null)
				return  (bool?) @Object[new Guid("1aab055e-b590-e9c8-c7e0-a99ad06443c7")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 28b1c58f-aefa-a449-7496-4805186bd94f
			Description : Work item ID	
*/
		public string Id
		{	
			set {@Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value = value;}
			get {
                    if(@Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")]==null || @Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: a74f8856-ffe2-fcad-67e0-38a7397336b5
			Description : Impact	
*/
		public ManagementPackEnumeration Impact
		{	
			set {@Object[new Guid("a74f8856-ffe2-fcad-67e0-38a7397336b5")].Value = value;}
			get
			{
				if(@Object[new Guid("a74f8856-ffe2-fcad-67e0-38a7397336b5")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("a74f8856-ffe2-fcad-67e0-38a7397336b5")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Enum	
			Id 			: d64785d9-16f0-67d5-23fc-c1047093cbf3
			Description : Last modified source	
*/
		public ManagementPackEnumeration LastModifiedSource
		{	
			set {@Object[new Guid("d64785d9-16f0-67d5-23fc-c1047093cbf3")].Value = value;}
			get
			{
				if(@Object[new Guid("d64785d9-16f0-67d5-23fc-c1047093cbf3")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("d64785d9-16f0-67d5-23fc-c1047093cbf3")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Boolean	
			Id 			: 68f93a71-ab0f-27fd-96ea-a1447117037a
			Description : Needs knowledge article	
*/
		public bool? NeedsKnowledgeArticle
		{	
			set {@Object[new Guid("68f93a71-ab0f-27fd-96ea-a1447117037a")].Value = value;}
			get
			{
				if(@Object[new Guid("68f93a71-ab0f-27fd-96ea-a1447117037a")] != null)
				return  (bool?) @Object[new Guid("68f93a71-ab0f-27fd-96ea-a1447117037a")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Int32	
			Id 			: 983ef3b4-1c7d-c05d-c28c-b89bc56426e2
			Description : Priority	
*/
		public int Priority
		{	
			set {@Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")].Value = value;}
			get {
                    if(@Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")]==null || @Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: ff6e5587-525c-3cd8-c508-fb44624de0fc
			Description : Resolution category	
*/
		public ManagementPackEnumeration ResolutionCategory
		{	
			set {@Object[new Guid("ff6e5587-525c-3cd8-c508-fb44624de0fc")].Value = value;}
			get
			{
				if(@Object[new Guid("ff6e5587-525c-3cd8-c508-fb44624de0fc")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("ff6e5587-525c-3cd8-c508-fb44624de0fc")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0
			Description : Resolution description	
*/
		public string ResolutionDescription
		{	
			set {@Object[new Guid("c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0")].Value = value;}
			get {
                    if(@Object[new Guid("c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0")]==null || @Object[new Guid("c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: a1b981cb-fbec-d0df-6465-5212d0076435
			Description : Resolved date	
*/
		public DateTime? ResolvedDate
		{	
			set {@Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")].Value = value;}
			get {
                    if(@Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")]==null || @Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: 1d59dc56-995b-1884-beef-7663a0103e28
			Description : Scheduled end date	
*/
		public DateTime? ScheduledEndDate
		{	
			set {@Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value = value;}
			get {
                    if(@Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")]==null || @Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: fb3b75ce-5483-b5a0-7498-10c585cef3b4
			Description : Scheduled start date	
*/
		public DateTime? ScheduledStartDate
		{	
			set {@Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value = value;}
			get {
                    if(@Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")]==null || @Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 72e56ac1-4147-273f-655a-55dafa41ff97
			Description : Source	
*/
		public ManagementPackEnumeration Source
		{	
			set {@Object[new Guid("72e56ac1-4147-273f-655a-55dafa41ff97")].Value = value;}
			get
			{
				if(@Object[new Guid("72e56ac1-4147-273f-655a-55dafa41ff97")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("72e56ac1-4147-273f-655a-55dafa41ff97")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Enum	
			Id 			: b528d69d-987b-1f9d-6eed-4cced7f53b3c
			Description : Status	
*/
		public ManagementPackEnumeration Status
		{	
			set {@Object[new Guid("b528d69d-987b-1f9d-6eed-4cced7f53b3c")].Value = value;}
			get
			{
				if(@Object[new Guid("b528d69d-987b-1f9d-6eed-4cced7f53b3c")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("b528d69d-987b-1f9d-6eed-4cced7f53b3c")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.DateTime	
			Id 			: 3fd816cd-d07e-8f69-2829-b7789d23a438
			Description : Target resolution time	
*/
		public DateTime? TargetResolutionTime
		{	
			set {@Object[new Guid("3fd816cd-d07e-8f69-2829-b7789d23a438")].Value = value;}
			get {
                    if(@Object[new Guid("3fd816cd-d07e-8f69-2829-b7789d23a438")]==null || @Object[new Guid("3fd816cd-d07e-8f69-2829-b7789d23a438")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("3fd816cd-d07e-8f69-2829-b7789d23a438")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 00cf00f8-9335-2bf7-f9e1-6bd1fd4fb13d
			Description : Support group	
*/
		public ManagementPackEnumeration TierQueue
		{	
			set {@Object[new Guid("00cf00f8-9335-2bf7-f9e1-6bd1fd4fb13d")].Value = value;}
			get
			{
				if(@Object[new Guid("00cf00f8-9335-2bf7-f9e1-6bd1fd4fb13d")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("00cf00f8-9335-2bf7-f9e1-6bd1fd4fb13d")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 029dd446-c76c-ab37-a105-235da4f979dd
			Description : Title	
*/
		public string Title
		{	
			set {@Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value = value;}
			get {
                    if(@Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")]==null || @Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: af230625-9b6c-842f-e22e-06bd25326fa5
			Description : Urgency	
*/
		public ManagementPackEnumeration Urgency
		{	
			set {@Object[new Guid("af230625-9b6c-842f-e22e-06bd25326fa5")].Value = value;}
			get
			{
				if(@Object[new Guid("af230625-9b6c-842f-e22e-06bd25326fa5")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("af230625-9b6c-842f-e22e-06bd25326fa5")].Value;
				else
				return null;
			}
		}
#endregion
#region Relationships
         
        public IComposableProjection AssignedToProjection
		{
			get{ return emop["AssignedWorkItem"].FirstOrDefault(); }
		}    
            
		public string AssignedToName  
		{
			get{
                var projection = emop["AssignedWorkItem"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddAssignedTo(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_WorkItem_IncidentClass.Relationships.System_WorkItemAssignedToUser;
					
			emop.Add(value, endPoint.Target);
		}
		
         
        public IComposableProjection AffectedUserProjection
		{
			get{ return emop["RequestedWorkItem"].FirstOrDefault(); }
		}    
            
		public string AffectedUserName  
		{
			get{
                var projection = emop["RequestedWorkItem"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddAffectedUser(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_WorkItem_IncidentClass.Relationships.System_WorkItemAffectedUser;
					
			emop.Add(value, endPoint.Target);
		}
		
         
        public IComposableProjection CreatedByUserProjection
		{
			get{ return emop["CreatedWorkItem"].FirstOrDefault(); }
		}    
            
		public string CreatedByUserName  
		{
			get{
                var projection = emop["CreatedWorkItem"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddCreatedByUser(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_WorkItem_IncidentClass.Relationships.System_WorkItemCreatedByUser;
					
			emop.Add(value, endPoint.Target);
		}
		
         
        public IComposableProjection ClosedByUserProjection
		{
			get{ return emop["RelatesToTroubleTicket"].FirstOrDefault(); }
		}    
            
		public string ClosedByUserName  
		{
			get{
                var projection = emop["RelatesToTroubleTicket"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddClosedByUser(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_WorkItem_IncidentClass.Relationships.System_WorkItem_TroubleTicketClosedByUser;
					
			emop.Add(value, endPoint.Target);
		}
		
         
        public IComposableProjection ResolvedByUserProjection
		{
			get{ return emop["RelatesToTroubleTicket"].FirstOrDefault(); }
		}    
            
		public string ResolvedByUserName  
		{
			get{
                var projection = emop["RelatesToTroubleTicket"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddResolvedByUser(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_WorkItem_IncidentClass.Relationships.System_WorkItem_TroubleTicketResolvedByUser;
					
			emop.Add(value, endPoint.Target);
		}
		
		public void AddActionLogs(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_IncidentClass.Relationships.System_WorkItem_TroubleTicketHasActionLog;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> ActionLogsProjection  
		{
			get{ return emop["AppliesToTroubleTicket"];}
		}
				
		public void AddUserComments(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_IncidentClass.Relationships.System_WorkItem_TroubleTicketHasUserComment;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> UserCommentsProjection  
		{
			get{ return emop["AppliesToTroubleTicket"];}
		}
				
		public void AddAnalystComments(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_IncidentClass.Relationships.System_WorkItem_TroubleTicketHasAnalystComment;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> AnalystCommentsProjection  
		{
			get{ return emop["AppliesToTroubleTicket"];}
		}
				
		public void AddAffectedComputer(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_IncidentClass.Relationships.System_WorkItemAboutConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> AffectedComputerProjection  
		{
			get{ return emop["HasRelatedWorkItems"];}
		}
				
		public void AddFileAttachments(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_IncidentClass.Relationships.System_WorkItemHasFileAttachment;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> FileAttachmentsProjection  
		{
			get{ return emop["FileAttachment"];}
		}
				
#endregion
		}// end tp class
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: Microsoft.SystemCenter.ServiceManager.Portal
			public class System_WorkItem_ChangeRequestPortalProjection  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public System_WorkItem_ChangeRequestPortalProjection(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("25faf8e8-88e7-8747-96e9-ce09735d21ba");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("2d5e77d8-1385-c107-542f-a20dbe9540a2");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static System_WorkItem_ChangeRequestPortalProjection Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, System_WorkItem_ChangeRequestClass.GetManagementPackClass());	
					return new  System_WorkItem_ChangeRequestPortalProjection(p);
				}
								
				public static System_WorkItem_ChangeRequestPortalProjection Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.WorkItem.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.WorkItem']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("25faf8e8-88e7-8747-96e9-ce09735d21ba"), property, id);
					return  new System_WorkItem_ChangeRequestPortalProjection(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.DateTime	
			Id 			: 665ed498-2551-7559-dce8-493e1ea171df
			Description : Actual end date	
*/
		public DateTime? ActualEndDate
		{	
			set {@Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value = value;}
			get {
                    if(@Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")]==null || @Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: d3c9aa55-bbc0-964e-716b-99defdac4405
			Description : Actual start date	
*/
		public DateTime? ActualStartDate
		{	
			set {@Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value = value;}
			get {
                    if(@Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")]==null || @Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 307cfd9e-4731-ebe2-3d95-808eba544174
			Description : Area	
*/
		public ManagementPackEnumeration Area
		{	
			set {@Object[new Guid("307cfd9e-4731-ebe2-3d95-808eba544174")].Value = value;}
			get
			{
				if(@Object[new Guid("307cfd9e-4731-ebe2-3d95-808eba544174")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("307cfd9e-4731-ebe2-3d95-808eba544174")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: d5b20722-d119-6702-3308-f987bd5aea75
			Description : Back out Plan	
*/
		public string BackoutPlan
		{	
			set {@Object[new Guid("d5b20722-d119-6702-3308-f987bd5aea75")].Value = value;}
			get {
                    if(@Object[new Guid("d5b20722-d119-6702-3308-f987bd5aea75")]==null || @Object[new Guid("d5b20722-d119-6702-3308-f987bd5aea75")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d5b20722-d119-6702-3308-f987bd5aea75")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 0baca6fa-4afe-ea7f-a060-6ee31d302152
			Description : Category	
*/
		public ManagementPackEnumeration Category
		{	
			set {@Object[new Guid("0baca6fa-4afe-ea7f-a060-6ee31d302152")].Value = value;}
			get
			{
				if(@Object[new Guid("0baca6fa-4afe-ea7f-a060-6ee31d302152")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("0baca6fa-4afe-ea7f-a060-6ee31d302152")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: d57cb7bc-d1d5-9614-0fe5-4002129da88b
			Description : Alternate contact method	
*/
		public string ContactMethod
		{	
			set {@Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value = value;}
			get {
                    if(@Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")]==null || @Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: ae5c5126-8937-8bdd-11f8-a7641bc06645
			Description : Created date	
*/
		public DateTime? CreatedDate
		{	
			set {@Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value = value;}
			get {
                    if(@Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")]==null || @Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: e5162c95-9469-924c-2298-9e351e0dc383
			Description : Description	
*/
		public string Description
		{	
			set {@Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value = value;}
			get {
                    if(@Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")]==null || @Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 28b1c58f-aefa-a449-7496-4805186bd94f
			Description : Work item ID	
*/
		public string Id
		{	
			set {@Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value = value;}
			get {
                    if(@Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")]==null || @Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 767a95c9-96ca-4a43-47dd-62948ac34846
			Description : Impact	
*/
		public ManagementPackEnumeration Impact
		{	
			set {@Object[new Guid("767a95c9-96ca-4a43-47dd-62948ac34846")].Value = value;}
			get
			{
				if(@Object[new Guid("767a95c9-96ca-4a43-47dd-62948ac34846")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("767a95c9-96ca-4a43-47dd-62948ac34846")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: b90e5f89-1e3a-e10f-f6d6-eeee684f896f
			Description : Implementation Plan	
*/
		public string ImplementationPlan
		{	
			set {@Object[new Guid("b90e5f89-1e3a-e10f-f6d6-eeee684f896f")].Value = value;}
			get {
                    if(@Object[new Guid("b90e5f89-1e3a-e10f-f6d6-eeee684f896f")]==null || @Object[new Guid("b90e5f89-1e3a-e10f-f6d6-eeee684f896f")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("b90e5f89-1e3a-e10f-f6d6-eeee684f896f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 9d2434e4-4a09-fcee-81fa-78a3b12d806e
			Description : Implementation Results	
*/
		public ManagementPackEnumeration ImplementationResults
		{	
			set {@Object[new Guid("9d2434e4-4a09-fcee-81fa-78a3b12d806e")].Value = value;}
			get
			{
				if(@Object[new Guid("9d2434e4-4a09-fcee-81fa-78a3b12d806e")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("9d2434e4-4a09-fcee-81fa-78a3b12d806e")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 5cc7ed69-4f78-3d14-1d4d-b17616a2b566
			Description : Notes	
*/
		public string Notes
		{	
			set {@Object[new Guid("5cc7ed69-4f78-3d14-1d4d-b17616a2b566")].Value = value;}
			get {
                    if(@Object[new Guid("5cc7ed69-4f78-3d14-1d4d-b17616a2b566")]==null || @Object[new Guid("5cc7ed69-4f78-3d14-1d4d-b17616a2b566")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("5cc7ed69-4f78-3d14-1d4d-b17616a2b566")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d4e89164-5c63-e88b-b693-5d65244b2529
			Description : Post Implementation Review	
*/
		public string PostImplementationReview
		{	
			set {@Object[new Guid("d4e89164-5c63-e88b-b693-5d65244b2529")].Value = value;}
			get {
                    if(@Object[new Guid("d4e89164-5c63-e88b-b693-5d65244b2529")]==null || @Object[new Guid("d4e89164-5c63-e88b-b693-5d65244b2529")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d4e89164-5c63-e88b-b693-5d65244b2529")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: a9934ada-3307-1e41-b851-f2d9503dbbbe
			Description : Priority	
*/
		public ManagementPackEnumeration Priority
		{	
			set {@Object[new Guid("a9934ada-3307-1e41-b851-f2d9503dbbbe")].Value = value;}
			get
			{
				if(@Object[new Guid("a9934ada-3307-1e41-b851-f2d9503dbbbe")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("a9934ada-3307-1e41-b851-f2d9503dbbbe")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 25f2d99d-2a86-a3f6-5157-8672def02553
			Description : Reason	
*/
		public string Reason
		{	
			set {@Object[new Guid("25f2d99d-2a86-a3f6-5157-8672def02553")].Value = value;}
			get {
                    if(@Object[new Guid("25f2d99d-2a86-a3f6-5157-8672def02553")]==null || @Object[new Guid("25f2d99d-2a86-a3f6-5157-8672def02553")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("25f2d99d-2a86-a3f6-5157-8672def02553")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: 4cb0bdbc-5092-6c7d-1bd3-7fda9df6afd9
			Description : Required By Date	
*/
		public DateTime? RequiredByDate
		{	
			set {@Object[new Guid("4cb0bdbc-5092-6c7d-1bd3-7fda9df6afd9")].Value = value;}
			get {
                    if(@Object[new Guid("4cb0bdbc-5092-6c7d-1bd3-7fda9df6afd9")]==null || @Object[new Guid("4cb0bdbc-5092-6c7d-1bd3-7fda9df6afd9")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("4cb0bdbc-5092-6c7d-1bd3-7fda9df6afd9")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 5e41a9d0-7d74-7c5a-e56e-c72292d9be20
			Description : Risk	
*/
		public ManagementPackEnumeration Risk
		{	
			set {@Object[new Guid("5e41a9d0-7d74-7c5a-e56e-c72292d9be20")].Value = value;}
			get
			{
				if(@Object[new Guid("5e41a9d0-7d74-7c5a-e56e-c72292d9be20")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("5e41a9d0-7d74-7c5a-e56e-c72292d9be20")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 596bc015-b878-950a-12ac-96ed5ee70336
			Description : Risk Assessment Plan	
*/
		public string RiskAssessmentPlan
		{	
			set {@Object[new Guid("596bc015-b878-950a-12ac-96ed5ee70336")].Value = value;}
			get {
                    if(@Object[new Guid("596bc015-b878-950a-12ac-96ed5ee70336")]==null || @Object[new Guid("596bc015-b878-950a-12ac-96ed5ee70336")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("596bc015-b878-950a-12ac-96ed5ee70336")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: 1d59dc56-995b-1884-beef-7663a0103e28
			Description : Scheduled end date	
*/
		public DateTime? ScheduledEndDate
		{	
			set {@Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value = value;}
			get {
                    if(@Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")]==null || @Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: fb3b75ce-5483-b5a0-7498-10c585cef3b4
			Description : Scheduled start date	
*/
		public DateTime? ScheduledStartDate
		{	
			set {@Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value = value;}
			get {
                    if(@Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")]==null || @Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 23659689-c1a7-98b3-bf1c-f352df014a4a
			Description : Status	
*/
		public ManagementPackEnumeration Status
		{	
			set {@Object[new Guid("23659689-c1a7-98b3-bf1c-f352df014a4a")].Value = value;}
			get
			{
				if(@Object[new Guid("23659689-c1a7-98b3-bf1c-f352df014a4a")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("23659689-c1a7-98b3-bf1c-f352df014a4a")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: daa7213f-a107-a1a4-964d-1b21af0ec8fb
			Description : Template Identifier	
*/
		public string TemplateId
		{	
			set {@Object[new Guid("daa7213f-a107-a1a4-964d-1b21af0ec8fb")].Value = value;}
			get {
                    if(@Object[new Guid("daa7213f-a107-a1a4-964d-1b21af0ec8fb")]==null || @Object[new Guid("daa7213f-a107-a1a4-964d-1b21af0ec8fb")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("daa7213f-a107-a1a4-964d-1b21af0ec8fb")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 49e207e5-44b7-2ccb-c062-f7c50db03b57
			Description : Test Plan	
*/
		public string TestPlan
		{	
			set {@Object[new Guid("49e207e5-44b7-2ccb-c062-f7c50db03b57")].Value = value;}
			get {
                    if(@Object[new Guid("49e207e5-44b7-2ccb-c062-f7c50db03b57")]==null || @Object[new Guid("49e207e5-44b7-2ccb-c062-f7c50db03b57")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("49e207e5-44b7-2ccb-c062-f7c50db03b57")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 029dd446-c76c-ab37-a105-235da4f979dd
			Description : Title	
*/
		public string Title
		{	
			set {@Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value = value;}
			get {
                    if(@Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")]==null || @Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value; 
                    
                }		
			
		}
#endregion
#region Relationships
         
        public IComposableProjection AssignedToProjection
		{
			get{ return emop["AssignedWorkItem"].FirstOrDefault(); }
		}    
            
		public string AssignedToName  
		{
			get{
                var projection = emop["AssignedWorkItem"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddAssignedTo(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_WorkItem_ChangeRequestClass.Relationships.System_WorkItemAssignedToUser;
					
			emop.Add(value, endPoint.Target);
		}
		
         
        public IComposableProjection AffectedUserProjection
		{
			get{ return emop["RequestedWorkItem"].FirstOrDefault(); }
		}    
            
		public string AffectedUserName  
		{
			get{
                var projection = emop["RequestedWorkItem"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddAffectedUser(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_WorkItem_ChangeRequestClass.Relationships.System_WorkItemAffectedUser;
					
			emop.Add(value, endPoint.Target);
		}
		
#endregion
		}// end tp class
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: Microsoft.SystemCenter.ServiceManager.Portal
			public class System_Knowledge_Article_PortalProjection  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public System_Knowledge_Article_PortalProjection(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("d46653da-2765-c941-9e06-e0a4a3fbc33d");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("2d5e77d8-1385-c107-542f-a20dbe9540a2");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static System_Knowledge_Article_PortalProjection Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, System_Knowledge_ArticleClass.GetManagementPackClass());	
					return new  System_Knowledge_Article_PortalProjection(p);
				}
								
				public static System_Knowledge_Article_PortalProjection Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.ConfigItem']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("d46653da-2765-c941-9e06-e0a4a3fbc33d"), property, id);
					return  new System_Knowledge_Article_PortalProjection(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.String	
			Id 			: 9c8092e8-a729-9037-0944-56c668269ef0
			Description : The description of the knowledge article	
*/
		public string Abstract
		{	
			set {@Object[new Guid("9c8092e8-a729-9037-0944-56c668269ef0")].Value = value;}
			get {
                    if(@Object[new Guid("9c8092e8-a729-9037-0944-56c668269ef0")]==null || @Object[new Guid("9c8092e8-a729-9037-0944-56c668269ef0")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("9c8092e8-a729-9037-0944-56c668269ef0")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.IO.Stream	
			Id 			: 92debada-bade-5052-57b5-000e2070ff01
			Description : Content added by analysts	
*/
		public Stream AnalystContent
		{	
			set {@Object[new Guid("92debada-bade-5052-57b5-000e2070ff01")].Value = value;}
			get {
                    if(@Object[new Guid("92debada-bade-5052-57b5-000e2070ff01")]==null || @Object[new Guid("92debada-bade-5052-57b5-000e2070ff01")].Value==null) 
                        return default(Stream) ;    
                    return (Stream) @Object[new Guid("92debada-bade-5052-57b5-000e2070ff01")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 9583d0a2-ea9f-c97e-bdca-7356bd129777
			Description : Knowledge Article Identifier	
*/
		public string ArticleId
		{	
			set {@Object[new Guid("9583d0a2-ea9f-c97e-bdca-7356bd129777")].Value = value;}
			get {
                    if(@Object[new Guid("9583d0a2-ea9f-c97e-bdca-7356bd129777")]==null || @Object[new Guid("9583d0a2-ea9f-c97e-bdca-7356bd129777")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("9583d0a2-ea9f-c97e-bdca-7356bd129777")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 4b80c57f-c0e7-0626-b4cb-4b7ea7abf199
			Description : The user who owns the knowledge article	
*/
		public string ArticleOwner
		{	
			set {@Object[new Guid("4b80c57f-c0e7-0626-b4cb-4b7ea7abf199")].Value = value;}
			get {
                    if(@Object[new Guid("4b80c57f-c0e7-0626-b4cb-4b7ea7abf199")]==null || @Object[new Guid("4b80c57f-c0e7-0626-b4cb-4b7ea7abf199")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("4b80c57f-c0e7-0626-b4cb-4b7ea7abf199")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: a19f6466-3c9c-9207-affd-74bb3307399a
			Description : Knowledge Article Template	
*/
		public string ArticleTemplate
		{	
			set {@Object[new Guid("a19f6466-3c9c-9207-affd-74bb3307399a")].Value = value;}
			get {
                    if(@Object[new Guid("a19f6466-3c9c-9207-affd-74bb3307399a")]==null || @Object[new Guid("a19f6466-3c9c-9207-affd-74bb3307399a")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("a19f6466-3c9c-9207-affd-74bb3307399a")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: c3cf19b0-f426-661c-031d-fc45844924d8
			Description : The type of knowledge article, such as how-to or troubleshooting guide	
*/
		public ManagementPackEnumeration ArticleType
		{	
			set {@Object[new Guid("c3cf19b0-f426-661c-031d-fc45844924d8")].Value = value;}
			get
			{
				if(@Object[new Guid("c3cf19b0-f426-661c-031d-fc45844924d8")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("c3cf19b0-f426-661c-031d-fc45844924d8")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Enum	
			Id 			: a6b7ea8d-9423-8529-cb21-87ac1a21fdcb
			Description : Asset status	
*/
		public ManagementPackEnumeration AssetStatus
		{	
			set {@Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")].Value = value;}
			get
			{
				if(@Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Enum	
			Id 			: bffb5ae8-23a4-1372-69a6-56c33c88dc0c
			Description : The knowledge article category (for example, Enterprise Application or Networking)	
*/
		public ManagementPackEnumeration Category
		{	
			set {@Object[new Guid("bffb5ae8-23a4-1372-69a6-56c33c88dc0c")].Value = value;}
			get
			{
				if(@Object[new Guid("bffb5ae8-23a4-1372-69a6-56c33c88dc0c")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("bffb5ae8-23a4-1372-69a6-56c33c88dc0c")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: af00af04-4754-6f57-6e8c-8367753be806
			Description : Comments on the knowledge article	
*/
		public string Comments
		{	
			set {@Object[new Guid("af00af04-4754-6f57-6e8c-8367753be806")].Value = value;}
			get {
                    if(@Object[new Guid("af00af04-4754-6f57-6e8c-8367753be806")]==null || @Object[new Guid("af00af04-4754-6f57-6e8c-8367753be806")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("af00af04-4754-6f57-6e8c-8367753be806")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 0f46ff38-b47d-3f0b-fae2-7724b1f48112
			Description : The user who created the knowledge article	
*/
		public string CreatedBy
		{	
			set {@Object[new Guid("0f46ff38-b47d-3f0b-fae2-7724b1f48112")].Value = value;}
			get {
                    if(@Object[new Guid("0f46ff38-b47d-3f0b-fae2-7724b1f48112")]==null || @Object[new Guid("0f46ff38-b47d-3f0b-fae2-7724b1f48112")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("0f46ff38-b47d-3f0b-fae2-7724b1f48112")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: 3284d928-8538-94d3-ecd6-f01636f89f63
			Description : The date on which the knowledge article was created	
*/
		public DateTime? CreatedDate
		{	
			set {@Object[new Guid("3284d928-8538-94d3-ecd6-f01636f89f63")].Value = value;}
			get {
                    if(@Object[new Guid("3284d928-8538-94d3-ecd6-f01636f89f63")]==null || @Object[new Guid("3284d928-8538-94d3-ecd6-f01636f89f63")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("3284d928-8538-94d3-ecd6-f01636f89f63")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.IO.Stream	
			Id 			: 4b6bf092-d465-4fc3-b6a5-1e3ec9a5071c
			Description : End User Content	
*/
		public Stream EndUserContent
		{	
			set {@Object[new Guid("4b6bf092-d465-4fc3-b6a5-1e3ec9a5071c")].Value = value;}
			get {
                    if(@Object[new Guid("4b6bf092-d465-4fc3-b6a5-1e3ec9a5071c")]==null || @Object[new Guid("4b6bf092-d465-4fc3-b6a5-1e3ec9a5071c")].Value==null) 
                        return default(Stream) ;    
                    return (Stream) @Object[new Guid("4b6bf092-d465-4fc3-b6a5-1e3ec9a5071c")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 6c4fe2d6-9641-a649-5ea9-29e22f191a8f
			Description : URL for an external source of knowledge	
*/
		public string ExternalURL
		{	
			set {@Object[new Guid("6c4fe2d6-9641-a649-5ea9-29e22f191a8f")].Value = value;}
			get {
                    if(@Object[new Guid("6c4fe2d6-9641-a649-5ea9-29e22f191a8f")]==null || @Object[new Guid("6c4fe2d6-9641-a649-5ea9-29e22f191a8f")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("6c4fe2d6-9641-a649-5ea9-29e22f191a8f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d9272c03-900e-9169-931d-144bb5334c92
			Description : User-friendly name for the URL	
*/
		public string ExternalURLSource
		{	
			set {@Object[new Guid("d9272c03-900e-9169-931d-144bb5334c92")].Value = value;}
			get {
                    if(@Object[new Guid("d9272c03-900e-9169-931d-144bb5334c92")]==null || @Object[new Guid("d9272c03-900e-9169-931d-144bb5334c92")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d9272c03-900e-9169-931d-144bb5334c92")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 6c6c20b6-f471-84b5-0672-0a356e622596
			Description : Keywords associated with the knowledge article	
*/
		public string Keywords
		{	
			set {@Object[new Guid("6c6c20b6-f471-84b5-0672-0a356e622596")].Value = value;}
			get {
                    if(@Object[new Guid("6c6c20b6-f471-84b5-0672-0a356e622596")]==null || @Object[new Guid("6c6c20b6-f471-84b5-0672-0a356e622596")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("6c6c20b6-f471-84b5-0672-0a356e622596")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 55124dce-750d-bd54-4b92-d1fddf99adec
			Description : Notes	
*/
		public string Notes
		{	
			set {@Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value = value;}
			get {
                    if(@Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")]==null || @Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 11927069-6957-dfcf-a277-08a784221325
			Description : Object status	
*/
		public ManagementPackEnumeration ObjectStatus
		{	
			set {@Object[new Guid("11927069-6957-dfcf-a277-08a784221325")].Value = value;}
			get
			{
				if(@Object[new Guid("11927069-6957-dfcf-a277-08a784221325")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("11927069-6957-dfcf-a277-08a784221325")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Int32	
			Id 			: dfe7dc0e-0c67-fd4a-ad57-bf18760bc558
			Description : Primary Locale ID	
*/
		public int PrimaryLocaleID
		{	
			set {@Object[new Guid("dfe7dc0e-0c67-fd4a-ad57-bf18760bc558")].Value = value;}
			get {
                    if(@Object[new Guid("dfe7dc0e-0c67-fd4a-ad57-bf18760bc558")]==null || @Object[new Guid("dfe7dc0e-0c67-fd4a-ad57-bf18760bc558")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("dfe7dc0e-0c67-fd4a-ad57-bf18760bc558")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 9ae0d83f-4100-c69b-f0f8-1321b0aebe4f
			Description : The status of the knowledge article (for example, draft or archived)	
*/
		public ManagementPackEnumeration Status
		{	
			set {@Object[new Guid("9ae0d83f-4100-c69b-f0f8-1321b0aebe4f")].Value = value;}
			get
			{
				if(@Object[new Guid("9ae0d83f-4100-c69b-f0f8-1321b0aebe4f")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("9ae0d83f-4100-c69b-f0f8-1321b0aebe4f")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Enum	
			Id 			: 558112fc-abf3-784e-bde3-28f0dc19391c
			Description : The flag associated with the knowledge article (for example, Top article or To complete)	
*/
		public ManagementPackEnumeration Tag
		{	
			set {@Object[new Guid("558112fc-abf3-784e-bde3-28f0dc19391c")].Value = value;}
			get
			{
				if(@Object[new Guid("558112fc-abf3-784e-bde3-28f0dc19391c")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("558112fc-abf3-784e-bde3-28f0dc19391c")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 9cbf1a45-0389-f20a-1cd6-2dfe461ab078
			Description : The title of the knowledge article	
*/
		public string Title
		{	
			set {@Object[new Guid("9cbf1a45-0389-f20a-1cd6-2dfe461ab078")].Value = value;}
			get {
                    if(@Object[new Guid("9cbf1a45-0389-f20a-1cd6-2dfe461ab078")]==null || @Object[new Guid("9cbf1a45-0389-f20a-1cd6-2dfe461ab078")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("9cbf1a45-0389-f20a-1cd6-2dfe461ab078")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: aee78772-3ac2-023c-3e3f-8a5998f575bd
			Description : An internal property used by the knowledge article class	
*/
		public string VendorArticleID
		{	
			set {@Object[new Guid("aee78772-3ac2-023c-3e3f-8a5998f575bd")].Value = value;}
			get {
                    if(@Object[new Guid("aee78772-3ac2-023c-3e3f-8a5998f575bd")]==null || @Object[new Guid("aee78772-3ac2-023c-3e3f-8a5998f575bd")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("aee78772-3ac2-023c-3e3f-8a5998f575bd")].Value; 
                    
                }		
			
		}
#endregion
#region Relationships
         
        public IComposableProjection RatingProjection
		{
			get{ return emop["Rating"].FirstOrDefault(); }
		}    
            
		public string RatingName  
		{
			get{
                var projection = emop["Rating"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddRating(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_Knowledge_ArticleClass.Relationships.System_Knowledge_DocumentHasAverageRating;
					
			emop.Add(value, endPoint.Target);
		}
		
#endregion
		}// end tp class
		}// end mp class
			public class ServiceManager_ActivityManagement_Configuration
			{
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: ServiceManager.ActivityManagement.Configuration
			public class System_WorkItem_Activity_ManualActivityViewProjection  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public System_WorkItem_Activity_ManualActivityViewProjection(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("953beaee-acf8-a195-363d-4782b2f919ac");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("d97b692d-0a08-b867-1689-e311ed1cedb6");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static System_WorkItem_Activity_ManualActivityViewProjection Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, System_WorkItem_Activity_ManualActivityClass.GetManagementPackClass());	
					return new  System_WorkItem_Activity_ManualActivityViewProjection(p);
				}
								
				public static System_WorkItem_Activity_ManualActivityViewProjection Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.WorkItem.Activity.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.WorkItem.Activity']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("953beaee-acf8-a195-363d-4782b2f919ac"), property, id);
					return  new System_WorkItem_Activity_ManualActivityViewProjection(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.DateTime	
			Id 			: 665ed498-2551-7559-dce8-493e1ea171df
			Description : Actual end date	
*/
		public DateTime? ActualEndDate
		{	
			set {@Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value = value;}
			get {
                    if(@Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")]==null || @Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: d3c9aa55-bbc0-964e-716b-99defdac4405
			Description : Actual start date	
*/
		public DateTime? ActualStartDate
		{	
			set {@Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value = value;}
			get {
                    if(@Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")]==null || @Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 882a828d-b5c7-0427-3ffc-c908c00995c8
			Description : Area	
*/
		public ManagementPackEnumeration Area
		{	
			set {@Object[new Guid("882a828d-b5c7-0427-3ffc-c908c00995c8")].Value = value;}
			get
			{
				if(@Object[new Guid("882a828d-b5c7-0427-3ffc-c908c00995c8")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("882a828d-b5c7-0427-3ffc-c908c00995c8")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: d57cb7bc-d1d5-9614-0fe5-4002129da88b
			Description : Alternate contact method	
*/
		public string ContactMethod
		{	
			set {@Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value = value;}
			get {
                    if(@Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")]==null || @Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: ae5c5126-8937-8bdd-11f8-a7641bc06645
			Description : Created date	
*/
		public DateTime? CreatedDate
		{	
			set {@Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value = value;}
			get {
                    if(@Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")]==null || @Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: e5162c95-9469-924c-2298-9e351e0dc383
			Description : Description	
*/
		public string Description
		{	
			set {@Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value = value;}
			get {
                    if(@Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")]==null || @Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 28b1c58f-aefa-a449-7496-4805186bd94f
			Description : Work item ID	
*/
		public string Id
		{	
			set {@Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value = value;}
			get {
                    if(@Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")]==null || @Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 420e7905-4114-0f38-36a2-f19abdac865e
			Description : Notes	
*/
		public string Notes
		{	
			set {@Object[new Guid("420e7905-4114-0f38-36a2-f19abdac865e")].Value = value;}
			get {
                    if(@Object[new Guid("420e7905-4114-0f38-36a2-f19abdac865e")]==null || @Object[new Guid("420e7905-4114-0f38-36a2-f19abdac865e")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("420e7905-4114-0f38-36a2-f19abdac865e")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 4828a242-5d1d-7761-39c8-b1bf31a0cbb8
			Description : Priority	
*/
		public ManagementPackEnumeration Priority
		{	
			set {@Object[new Guid("4828a242-5d1d-7761-39c8-b1bf31a0cbb8")].Value = value;}
			get
			{
				if(@Object[new Guid("4828a242-5d1d-7761-39c8-b1bf31a0cbb8")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("4828a242-5d1d-7761-39c8-b1bf31a0cbb8")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.DateTime	
			Id 			: 1d59dc56-995b-1884-beef-7663a0103e28
			Description : Scheduled end date	
*/
		public DateTime? ScheduledEndDate
		{	
			set {@Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value = value;}
			get {
                    if(@Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")]==null || @Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: fb3b75ce-5483-b5a0-7498-10c585cef3b4
			Description : Scheduled start date	
*/
		public DateTime? ScheduledStartDate
		{	
			set {@Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value = value;}
			get {
                    if(@Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")]==null || @Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Int32	
			Id 			: 2f7e00ad-5867-e4e8-7233-e280530ec0cb
			Description : Sequence Identifier	
*/
		public int SequenceId
		{	
			set {@Object[new Guid("2f7e00ad-5867-e4e8-7233-e280530ec0cb")].Value = value;}
			get {
                    if(@Object[new Guid("2f7e00ad-5867-e4e8-7233-e280530ec0cb")]==null || @Object[new Guid("2f7e00ad-5867-e4e8-7233-e280530ec0cb")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("2f7e00ad-5867-e4e8-7233-e280530ec0cb")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 764b9c5d-bb4b-7bab-d807-2439c1b8bf5f
			Description : Stage	
*/
		public ManagementPackEnumeration Stage
		{	
			set {@Object[new Guid("764b9c5d-bb4b-7bab-d807-2439c1b8bf5f")].Value = value;}
			get
			{
				if(@Object[new Guid("764b9c5d-bb4b-7bab-d807-2439c1b8bf5f")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("764b9c5d-bb4b-7bab-d807-2439c1b8bf5f")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Enum	
			Id 			: 09594130-66ef-0bb2-1fc8-8cd7e6a5e06e
			Description : Status	
*/
		public ManagementPackEnumeration Status
		{	
			set {@Object[new Guid("09594130-66ef-0bb2-1fc8-8cd7e6a5e06e")].Value = value;}
			get
			{
				if(@Object[new Guid("09594130-66ef-0bb2-1fc8-8cd7e6a5e06e")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("09594130-66ef-0bb2-1fc8-8cd7e6a5e06e")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 029dd446-c76c-ab37-a105-235da4f979dd
			Description : Title	
*/
		public string Title
		{	
			set {@Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value = value;}
			get {
                    if(@Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")]==null || @Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value; 
                    
                }		
			
		}
#endregion
#region Relationships
         
        public IComposableProjection ActivityAssignedToProjection
		{
			get{ return emop["AssignedWorkItem"].FirstOrDefault(); }
		}    
            
		public string ActivityAssignedToName  
		{
			get{
                var projection = emop["AssignedWorkItem"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddActivityAssignedTo(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_WorkItem_Activity_ManualActivityClass.Relationships.System_WorkItemAssignedToUser;
					
			emop.Add(value, endPoint.Target);
		}
		
#endregion
		}// end tp class
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: ServiceManager.ActivityManagement.Configuration
			public class System_WorkItem_Activity_ReviewActivityViewProjection  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public System_WorkItem_Activity_ReviewActivityViewProjection(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("3043253c-959e-25bd-32b4-c5eb1a7e71dc");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("d97b692d-0a08-b867-1689-e311ed1cedb6");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static System_WorkItem_Activity_ReviewActivityViewProjection Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, System_WorkItem_Activity_ReviewActivityClass.GetManagementPackClass());	
					return new  System_WorkItem_Activity_ReviewActivityViewProjection(p);
				}
								
				public static System_WorkItem_Activity_ReviewActivityViewProjection Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.WorkItem.Activity.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.WorkItem.Activity']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("3043253c-959e-25bd-32b4-c5eb1a7e71dc"), property, id);
					return  new System_WorkItem_Activity_ReviewActivityViewProjection(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.DateTime	
			Id 			: 665ed498-2551-7559-dce8-493e1ea171df
			Description : Actual end date	
*/
		public DateTime? ActualEndDate
		{	
			set {@Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value = value;}
			get {
                    if(@Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")]==null || @Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: d3c9aa55-bbc0-964e-716b-99defdac4405
			Description : Actual start date	
*/
		public DateTime? ActualStartDate
		{	
			set {@Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value = value;}
			get {
                    if(@Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")]==null || @Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 3f9f69dd-d949-4ebc-49c6-117ba9e3b43d
			Description : Approval Condition	
*/
		public ManagementPackEnumeration ApprovalCondition
		{	
			set {@Object[new Guid("3f9f69dd-d949-4ebc-49c6-117ba9e3b43d")].Value = value;}
			get
			{
				if(@Object[new Guid("3f9f69dd-d949-4ebc-49c6-117ba9e3b43d")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("3f9f69dd-d949-4ebc-49c6-117ba9e3b43d")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Int32	
			Id 			: ef4871c7-6eac-0649-1a4b-52ea96c50ecb
			Description : Approval Percentage	
*/
		public int ApprovalPercentage
		{	
			set {@Object[new Guid("ef4871c7-6eac-0649-1a4b-52ea96c50ecb")].Value = value;}
			get {
                    if(@Object[new Guid("ef4871c7-6eac-0649-1a4b-52ea96c50ecb")]==null || @Object[new Guid("ef4871c7-6eac-0649-1a4b-52ea96c50ecb")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("ef4871c7-6eac-0649-1a4b-52ea96c50ecb")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 882a828d-b5c7-0427-3ffc-c908c00995c8
			Description : Area	
*/
		public ManagementPackEnumeration Area
		{	
			set {@Object[new Guid("882a828d-b5c7-0427-3ffc-c908c00995c8")].Value = value;}
			get
			{
				if(@Object[new Guid("882a828d-b5c7-0427-3ffc-c908c00995c8")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("882a828d-b5c7-0427-3ffc-c908c00995c8")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 7542904e-e083-bb60-ed09-d5dec8feda5a
			Description : Comments	
*/
		public string Comments
		{	
			set {@Object[new Guid("7542904e-e083-bb60-ed09-d5dec8feda5a")].Value = value;}
			get {
                    if(@Object[new Guid("7542904e-e083-bb60-ed09-d5dec8feda5a")]==null || @Object[new Guid("7542904e-e083-bb60-ed09-d5dec8feda5a")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("7542904e-e083-bb60-ed09-d5dec8feda5a")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d57cb7bc-d1d5-9614-0fe5-4002129da88b
			Description : Alternate contact method	
*/
		public string ContactMethod
		{	
			set {@Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value = value;}
			get {
                    if(@Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")]==null || @Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: ae5c5126-8937-8bdd-11f8-a7641bc06645
			Description : Created date	
*/
		public DateTime? CreatedDate
		{	
			set {@Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value = value;}
			get {
                    if(@Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")]==null || @Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: e5162c95-9469-924c-2298-9e351e0dc383
			Description : Description	
*/
		public string Description
		{	
			set {@Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value = value;}
			get {
                    if(@Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")]==null || @Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 28b1c58f-aefa-a449-7496-4805186bd94f
			Description : Work item ID	
*/
		public string Id
		{	
			set {@Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value = value;}
			get {
                    if(@Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")]==null || @Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: fa78a7e1-c3ff-7cd3-0852-66c3ca077bb7
			Description : Line Manager Should Review	
*/
		public bool? LineManagerShouldReview
		{	
			set {@Object[new Guid("fa78a7e1-c3ff-7cd3-0852-66c3ca077bb7")].Value = value;}
			get
			{
				if(@Object[new Guid("fa78a7e1-c3ff-7cd3-0852-66c3ca077bb7")] != null)
				return  (bool?) @Object[new Guid("fa78a7e1-c3ff-7cd3-0852-66c3ca077bb7")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 420e7905-4114-0f38-36a2-f19abdac865e
			Description : Notes	
*/
		public string Notes
		{	
			set {@Object[new Guid("420e7905-4114-0f38-36a2-f19abdac865e")].Value = value;}
			get {
                    if(@Object[new Guid("420e7905-4114-0f38-36a2-f19abdac865e")]==null || @Object[new Guid("420e7905-4114-0f38-36a2-f19abdac865e")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("420e7905-4114-0f38-36a2-f19abdac865e")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: d51fb4a8-f285-bee0-26f5-5beba1ea9592
			Description : Owners Of Configuration Item Should Review	
*/
		public bool? OwnersOfConfigItemShouldReview
		{	
			set {@Object[new Guid("d51fb4a8-f285-bee0-26f5-5beba1ea9592")].Value = value;}
			get
			{
				if(@Object[new Guid("d51fb4a8-f285-bee0-26f5-5beba1ea9592")] != null)
				return  (bool?) @Object[new Guid("d51fb4a8-f285-bee0-26f5-5beba1ea9592")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Enum	
			Id 			: 4828a242-5d1d-7761-39c8-b1bf31a0cbb8
			Description : Priority	
*/
		public ManagementPackEnumeration Priority
		{	
			set {@Object[new Guid("4828a242-5d1d-7761-39c8-b1bf31a0cbb8")].Value = value;}
			get
			{
				if(@Object[new Guid("4828a242-5d1d-7761-39c8-b1bf31a0cbb8")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("4828a242-5d1d-7761-39c8-b1bf31a0cbb8")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.DateTime	
			Id 			: 1d59dc56-995b-1884-beef-7663a0103e28
			Description : Scheduled end date	
*/
		public DateTime? ScheduledEndDate
		{	
			set {@Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value = value;}
			get {
                    if(@Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")]==null || @Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: fb3b75ce-5483-b5a0-7498-10c585cef3b4
			Description : Scheduled start date	
*/
		public DateTime? ScheduledStartDate
		{	
			set {@Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value = value;}
			get {
                    if(@Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")]==null || @Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Int32	
			Id 			: 2f7e00ad-5867-e4e8-7233-e280530ec0cb
			Description : Sequence Identifier	
*/
		public int SequenceId
		{	
			set {@Object[new Guid("2f7e00ad-5867-e4e8-7233-e280530ec0cb")].Value = value;}
			get {
                    if(@Object[new Guid("2f7e00ad-5867-e4e8-7233-e280530ec0cb")]==null || @Object[new Guid("2f7e00ad-5867-e4e8-7233-e280530ec0cb")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("2f7e00ad-5867-e4e8-7233-e280530ec0cb")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 764b9c5d-bb4b-7bab-d807-2439c1b8bf5f
			Description : Stage	
*/
		public ManagementPackEnumeration Stage
		{	
			set {@Object[new Guid("764b9c5d-bb4b-7bab-d807-2439c1b8bf5f")].Value = value;}
			get
			{
				if(@Object[new Guid("764b9c5d-bb4b-7bab-d807-2439c1b8bf5f")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("764b9c5d-bb4b-7bab-d807-2439c1b8bf5f")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Enum	
			Id 			: 09594130-66ef-0bb2-1fc8-8cd7e6a5e06e
			Description : Status	
*/
		public ManagementPackEnumeration Status
		{	
			set {@Object[new Guid("09594130-66ef-0bb2-1fc8-8cd7e6a5e06e")].Value = value;}
			get
			{
				if(@Object[new Guid("09594130-66ef-0bb2-1fc8-8cd7e6a5e06e")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("09594130-66ef-0bb2-1fc8-8cd7e6a5e06e")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 029dd446-c76c-ab37-a105-235da4f979dd
			Description : Title	
*/
		public string Title
		{	
			set {@Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value = value;}
			get {
                    if(@Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")]==null || @Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value; 
                    
                }		
			
		}
#endregion
#region Relationships
		public void AddReviewer(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_Activity_ReviewActivityClass.Relationships.System_ReviewActivityHasReviewer;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> ReviewerProjection  
		{
			get{ return emop["Reviewer"];}
		}
				
#endregion
		}// end tp class
		}// end mp class
			public class ServiceManager_ActivityManagement_Library
			{
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: ServiceManager.ActivityManagement.Library
			public class System_WorkItem_Activity_ReviewActivityProjection  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public System_WorkItem_Activity_ReviewActivityProjection(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("125d26e0-03c7-adb5-7e4b-77f75adc9270");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("7b8d32db-bdb4-cabf-b947-c013c0e00baa");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static System_WorkItem_Activity_ReviewActivityProjection Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, System_WorkItem_Activity_ReviewActivityClass.GetManagementPackClass());	
					return new  System_WorkItem_Activity_ReviewActivityProjection(p);
				}
								
				public static System_WorkItem_Activity_ReviewActivityProjection Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.WorkItem.Activity.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.WorkItem.Activity']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("125d26e0-03c7-adb5-7e4b-77f75adc9270"), property, id);
					return  new System_WorkItem_Activity_ReviewActivityProjection(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.DateTime	
			Id 			: 665ed498-2551-7559-dce8-493e1ea171df
			Description : Actual end date	
*/
		public DateTime? ActualEndDate
		{	
			set {@Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value = value;}
			get {
                    if(@Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")]==null || @Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: d3c9aa55-bbc0-964e-716b-99defdac4405
			Description : Actual start date	
*/
		public DateTime? ActualStartDate
		{	
			set {@Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value = value;}
			get {
                    if(@Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")]==null || @Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 3f9f69dd-d949-4ebc-49c6-117ba9e3b43d
			Description : Approval Condition	
*/
		public ManagementPackEnumeration ApprovalCondition
		{	
			set {@Object[new Guid("3f9f69dd-d949-4ebc-49c6-117ba9e3b43d")].Value = value;}
			get
			{
				if(@Object[new Guid("3f9f69dd-d949-4ebc-49c6-117ba9e3b43d")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("3f9f69dd-d949-4ebc-49c6-117ba9e3b43d")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Int32	
			Id 			: ef4871c7-6eac-0649-1a4b-52ea96c50ecb
			Description : Approval Percentage	
*/
		public int ApprovalPercentage
		{	
			set {@Object[new Guid("ef4871c7-6eac-0649-1a4b-52ea96c50ecb")].Value = value;}
			get {
                    if(@Object[new Guid("ef4871c7-6eac-0649-1a4b-52ea96c50ecb")]==null || @Object[new Guid("ef4871c7-6eac-0649-1a4b-52ea96c50ecb")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("ef4871c7-6eac-0649-1a4b-52ea96c50ecb")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 882a828d-b5c7-0427-3ffc-c908c00995c8
			Description : Area	
*/
		public ManagementPackEnumeration Area
		{	
			set {@Object[new Guid("882a828d-b5c7-0427-3ffc-c908c00995c8")].Value = value;}
			get
			{
				if(@Object[new Guid("882a828d-b5c7-0427-3ffc-c908c00995c8")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("882a828d-b5c7-0427-3ffc-c908c00995c8")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 7542904e-e083-bb60-ed09-d5dec8feda5a
			Description : Comments	
*/
		public string Comments
		{	
			set {@Object[new Guid("7542904e-e083-bb60-ed09-d5dec8feda5a")].Value = value;}
			get {
                    if(@Object[new Guid("7542904e-e083-bb60-ed09-d5dec8feda5a")]==null || @Object[new Guid("7542904e-e083-bb60-ed09-d5dec8feda5a")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("7542904e-e083-bb60-ed09-d5dec8feda5a")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d57cb7bc-d1d5-9614-0fe5-4002129da88b
			Description : Alternate contact method	
*/
		public string ContactMethod
		{	
			set {@Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value = value;}
			get {
                    if(@Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")]==null || @Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: ae5c5126-8937-8bdd-11f8-a7641bc06645
			Description : Created date	
*/
		public DateTime? CreatedDate
		{	
			set {@Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value = value;}
			get {
                    if(@Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")]==null || @Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: e5162c95-9469-924c-2298-9e351e0dc383
			Description : Description	
*/
		public string Description
		{	
			set {@Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value = value;}
			get {
                    if(@Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")]==null || @Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 28b1c58f-aefa-a449-7496-4805186bd94f
			Description : Work item ID	
*/
		public string Id
		{	
			set {@Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value = value;}
			get {
                    if(@Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")]==null || @Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: fa78a7e1-c3ff-7cd3-0852-66c3ca077bb7
			Description : Line Manager Should Review	
*/
		public bool? LineManagerShouldReview
		{	
			set {@Object[new Guid("fa78a7e1-c3ff-7cd3-0852-66c3ca077bb7")].Value = value;}
			get
			{
				if(@Object[new Guid("fa78a7e1-c3ff-7cd3-0852-66c3ca077bb7")] != null)
				return  (bool?) @Object[new Guid("fa78a7e1-c3ff-7cd3-0852-66c3ca077bb7")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 420e7905-4114-0f38-36a2-f19abdac865e
			Description : Notes	
*/
		public string Notes
		{	
			set {@Object[new Guid("420e7905-4114-0f38-36a2-f19abdac865e")].Value = value;}
			get {
                    if(@Object[new Guid("420e7905-4114-0f38-36a2-f19abdac865e")]==null || @Object[new Guid("420e7905-4114-0f38-36a2-f19abdac865e")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("420e7905-4114-0f38-36a2-f19abdac865e")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: d51fb4a8-f285-bee0-26f5-5beba1ea9592
			Description : Owners Of Configuration Item Should Review	
*/
		public bool? OwnersOfConfigItemShouldReview
		{	
			set {@Object[new Guid("d51fb4a8-f285-bee0-26f5-5beba1ea9592")].Value = value;}
			get
			{
				if(@Object[new Guid("d51fb4a8-f285-bee0-26f5-5beba1ea9592")] != null)
				return  (bool?) @Object[new Guid("d51fb4a8-f285-bee0-26f5-5beba1ea9592")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Enum	
			Id 			: 4828a242-5d1d-7761-39c8-b1bf31a0cbb8
			Description : Priority	
*/
		public ManagementPackEnumeration Priority
		{	
			set {@Object[new Guid("4828a242-5d1d-7761-39c8-b1bf31a0cbb8")].Value = value;}
			get
			{
				if(@Object[new Guid("4828a242-5d1d-7761-39c8-b1bf31a0cbb8")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("4828a242-5d1d-7761-39c8-b1bf31a0cbb8")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.DateTime	
			Id 			: 1d59dc56-995b-1884-beef-7663a0103e28
			Description : Scheduled end date	
*/
		public DateTime? ScheduledEndDate
		{	
			set {@Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value = value;}
			get {
                    if(@Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")]==null || @Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: fb3b75ce-5483-b5a0-7498-10c585cef3b4
			Description : Scheduled start date	
*/
		public DateTime? ScheduledStartDate
		{	
			set {@Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value = value;}
			get {
                    if(@Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")]==null || @Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Int32	
			Id 			: 2f7e00ad-5867-e4e8-7233-e280530ec0cb
			Description : Sequence Identifier	
*/
		public int SequenceId
		{	
			set {@Object[new Guid("2f7e00ad-5867-e4e8-7233-e280530ec0cb")].Value = value;}
			get {
                    if(@Object[new Guid("2f7e00ad-5867-e4e8-7233-e280530ec0cb")]==null || @Object[new Guid("2f7e00ad-5867-e4e8-7233-e280530ec0cb")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("2f7e00ad-5867-e4e8-7233-e280530ec0cb")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 764b9c5d-bb4b-7bab-d807-2439c1b8bf5f
			Description : Stage	
*/
		public ManagementPackEnumeration Stage
		{	
			set {@Object[new Guid("764b9c5d-bb4b-7bab-d807-2439c1b8bf5f")].Value = value;}
			get
			{
				if(@Object[new Guid("764b9c5d-bb4b-7bab-d807-2439c1b8bf5f")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("764b9c5d-bb4b-7bab-d807-2439c1b8bf5f")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Enum	
			Id 			: 09594130-66ef-0bb2-1fc8-8cd7e6a5e06e
			Description : Status	
*/
		public ManagementPackEnumeration Status
		{	
			set {@Object[new Guid("09594130-66ef-0bb2-1fc8-8cd7e6a5e06e")].Value = value;}
			get
			{
				if(@Object[new Guid("09594130-66ef-0bb2-1fc8-8cd7e6a5e06e")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("09594130-66ef-0bb2-1fc8-8cd7e6a5e06e")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 029dd446-c76c-ab37-a105-235da4f979dd
			Description : Title	
*/
		public string Title
		{	
			set {@Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value = value;}
			get {
                    if(@Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")]==null || @Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value; 
                    
                }		
			
		}
#endregion
#region Relationships
		public void AddParentWorkItem(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_Activity_ReviewActivityClass.Relationships.System_WorkItemContainsActivity;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> ParentWorkItemProjection  
		{
			get{ return emop["WorkItem"];}
		}
				
         
        public IComposableProjection ActivityCreatedByProjection
		{
			get{ return emop["CreatedWorkItem"].FirstOrDefault(); }
		}    
            
		public string ActivityCreatedByName  
		{
			get{
                var projection = emop["CreatedWorkItem"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddActivityCreatedBy(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_WorkItem_Activity_ReviewActivityClass.Relationships.System_WorkItemCreatedByUser;
					
			emop.Add(value, endPoint.Target);
		}
		
         
        public IComposableProjection ActivityAssignedToProjection
		{
			get{ return emop["AssignedWorkItem"].FirstOrDefault(); }
		}    
            
		public string ActivityAssignedToName  
		{
			get{
                var projection = emop["AssignedWorkItem"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddActivityAssignedTo(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_WorkItem_Activity_ReviewActivityClass.Relationships.System_WorkItemAssignedToUser;
					
			emop.Add(value, endPoint.Target);
		}
		
		public void AddReviewer(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_Activity_ReviewActivityClass.Relationships.System_ReviewActivityHasReviewer;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> ReviewerProjection  
		{
			get{ return emop["Reviewer"];}
		}
				
#endregion
		}// end tp class
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: ServiceManager.ActivityManagement.Library
			public class System_ReviewerProjection  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public System_ReviewerProjection(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("18476888-f6a2-e50a-2a73-d5f5cbc4c192");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("7b8d32db-bdb4-cabf-b947-c013c0e00baa");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static System_ReviewerProjection Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, System_ReviewerClass.GetManagementPackClass());	
					return new  System_ReviewerProjection(p);
				}
								
				public static System_ReviewerProjection Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.SupportingItem.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.SupportingItem']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("18476888-f6a2-e50a-2a73-d5f5cbc4c192"), property, id);
					return  new System_ReviewerProjection(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.String	
			Id 			: f95c19c3-4065-d025-795f-20b5b36b183a
			Description : Comments	
*/
		public string Comments
		{	
			set {@Object[new Guid("f95c19c3-4065-d025-795f-20b5b36b183a")].Value = value;}
			get {
                    if(@Object[new Guid("f95c19c3-4065-d025-795f-20b5b36b183a")]==null || @Object[new Guid("f95c19c3-4065-d025-795f-20b5b36b183a")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("f95c19c3-4065-d025-795f-20b5b36b183a")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: d8ed4f28-0b68-a656-6a67-197f74f6b34f
			Description : Decision	
*/
		public ManagementPackEnumeration Decision
		{	
			set {@Object[new Guid("d8ed4f28-0b68-a656-6a67-197f74f6b34f")].Value = value;}
			get
			{
				if(@Object[new Guid("d8ed4f28-0b68-a656-6a67-197f74f6b34f")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("d8ed4f28-0b68-a656-6a67-197f74f6b34f")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.DateTime	
			Id 			: 92b33617-131f-4726-bb9e-8d7974313fc7
			Description : Decision Date	
*/
		public DateTime? DecisionDate
		{	
			set {@Object[new Guid("92b33617-131f-4726-bb9e-8d7974313fc7")].Value = value;}
			get {
                    if(@Object[new Guid("92b33617-131f-4726-bb9e-8d7974313fc7")]==null || @Object[new Guid("92b33617-131f-4726-bb9e-8d7974313fc7")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("92b33617-131f-4726-bb9e-8d7974313fc7")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: a4e71854-1fc0-0976-5b77-d6055f733409
			Description : Must Vote	
*/
		public bool? MustVote
		{	
			set {@Object[new Guid("a4e71854-1fc0-0976-5b77-d6055f733409")].Value = value;}
			get
			{
				if(@Object[new Guid("a4e71854-1fc0-0976-5b77-d6055f733409")] != null)
				return  (bool?) @Object[new Guid("a4e71854-1fc0-0976-5b77-d6055f733409")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 1c98c323-8c9f-1692-f703-4ed0dab1f727
			Description : Reviewer Identifier	
*/
		public string ReviewerId
		{	
			set {@Object[new Guid("1c98c323-8c9f-1692-f703-4ed0dab1f727")].Value = value;}
			get {
                    if(@Object[new Guid("1c98c323-8c9f-1692-f703-4ed0dab1f727")]==null || @Object[new Guid("1c98c323-8c9f-1692-f703-4ed0dab1f727")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("1c98c323-8c9f-1692-f703-4ed0dab1f727")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: 3b724b51-03e9-7482-c18b-6c2882180a1d
			Description : Veto	
*/
		public bool? Veto
		{	
			set {@Object[new Guid("3b724b51-03e9-7482-c18b-6c2882180a1d")].Value = value;}
			get
			{
				if(@Object[new Guid("3b724b51-03e9-7482-c18b-6c2882180a1d")] != null)
				return  (bool?) @Object[new Guid("3b724b51-03e9-7482-c18b-6c2882180a1d")].Value;
				else
				return null;
			}
		}
#endregion
#region Relationships
         
        public IComposableProjection UserProjection
		{
			get{ return emop["User"].FirstOrDefault(); }
		}    
            
		public string UserName  
		{
			get{
                var projection = emop["User"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddUser(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_ReviewerClass.Relationships.System_ReviewerIsUser;
					
			emop.Add(value, endPoint.Target);
		}
		
         
        public IComposableProjection VotedByProjection
		{
			get{ return emop["VotedBy"].FirstOrDefault(); }
		}    
            
		public string VotedByName  
		{
			get{
                var projection = emop["VotedBy"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddVotedBy(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_ReviewerClass.Relationships.System_ReviewerVotedByUser;
					
			emop.Add(value, endPoint.Target);
		}
		
#endregion
		}// end tp class
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: ServiceManager.ActivityManagement.Library
			public class System_WorkItem_Activity_ManualActivityProjection  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public System_WorkItem_Activity_ManualActivityProjection(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("d651bf4a-9f5d-0374-3e91-eb91111865c3");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("7b8d32db-bdb4-cabf-b947-c013c0e00baa");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static System_WorkItem_Activity_ManualActivityProjection Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, System_WorkItem_Activity_ManualActivityClass.GetManagementPackClass());	
					return new  System_WorkItem_Activity_ManualActivityProjection(p);
				}
								
				public static System_WorkItem_Activity_ManualActivityProjection Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.WorkItem.Activity.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.WorkItem.Activity']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("d651bf4a-9f5d-0374-3e91-eb91111865c3"), property, id);
					return  new System_WorkItem_Activity_ManualActivityProjection(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.DateTime	
			Id 			: 665ed498-2551-7559-dce8-493e1ea171df
			Description : Actual end date	
*/
		public DateTime? ActualEndDate
		{	
			set {@Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value = value;}
			get {
                    if(@Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")]==null || @Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: d3c9aa55-bbc0-964e-716b-99defdac4405
			Description : Actual start date	
*/
		public DateTime? ActualStartDate
		{	
			set {@Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value = value;}
			get {
                    if(@Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")]==null || @Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 882a828d-b5c7-0427-3ffc-c908c00995c8
			Description : Area	
*/
		public ManagementPackEnumeration Area
		{	
			set {@Object[new Guid("882a828d-b5c7-0427-3ffc-c908c00995c8")].Value = value;}
			get
			{
				if(@Object[new Guid("882a828d-b5c7-0427-3ffc-c908c00995c8")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("882a828d-b5c7-0427-3ffc-c908c00995c8")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: d57cb7bc-d1d5-9614-0fe5-4002129da88b
			Description : Alternate contact method	
*/
		public string ContactMethod
		{	
			set {@Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value = value;}
			get {
                    if(@Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")]==null || @Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: ae5c5126-8937-8bdd-11f8-a7641bc06645
			Description : Created date	
*/
		public DateTime? CreatedDate
		{	
			set {@Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value = value;}
			get {
                    if(@Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")]==null || @Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: e5162c95-9469-924c-2298-9e351e0dc383
			Description : Description	
*/
		public string Description
		{	
			set {@Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value = value;}
			get {
                    if(@Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")]==null || @Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 28b1c58f-aefa-a449-7496-4805186bd94f
			Description : Work item ID	
*/
		public string Id
		{	
			set {@Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value = value;}
			get {
                    if(@Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")]==null || @Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 420e7905-4114-0f38-36a2-f19abdac865e
			Description : Notes	
*/
		public string Notes
		{	
			set {@Object[new Guid("420e7905-4114-0f38-36a2-f19abdac865e")].Value = value;}
			get {
                    if(@Object[new Guid("420e7905-4114-0f38-36a2-f19abdac865e")]==null || @Object[new Guid("420e7905-4114-0f38-36a2-f19abdac865e")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("420e7905-4114-0f38-36a2-f19abdac865e")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 4828a242-5d1d-7761-39c8-b1bf31a0cbb8
			Description : Priority	
*/
		public ManagementPackEnumeration Priority
		{	
			set {@Object[new Guid("4828a242-5d1d-7761-39c8-b1bf31a0cbb8")].Value = value;}
			get
			{
				if(@Object[new Guid("4828a242-5d1d-7761-39c8-b1bf31a0cbb8")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("4828a242-5d1d-7761-39c8-b1bf31a0cbb8")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.DateTime	
			Id 			: 1d59dc56-995b-1884-beef-7663a0103e28
			Description : Scheduled end date	
*/
		public DateTime? ScheduledEndDate
		{	
			set {@Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value = value;}
			get {
                    if(@Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")]==null || @Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: fb3b75ce-5483-b5a0-7498-10c585cef3b4
			Description : Scheduled start date	
*/
		public DateTime? ScheduledStartDate
		{	
			set {@Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value = value;}
			get {
                    if(@Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")]==null || @Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Int32	
			Id 			: 2f7e00ad-5867-e4e8-7233-e280530ec0cb
			Description : Sequence Identifier	
*/
		public int SequenceId
		{	
			set {@Object[new Guid("2f7e00ad-5867-e4e8-7233-e280530ec0cb")].Value = value;}
			get {
                    if(@Object[new Guid("2f7e00ad-5867-e4e8-7233-e280530ec0cb")]==null || @Object[new Guid("2f7e00ad-5867-e4e8-7233-e280530ec0cb")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("2f7e00ad-5867-e4e8-7233-e280530ec0cb")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 764b9c5d-bb4b-7bab-d807-2439c1b8bf5f
			Description : Stage	
*/
		public ManagementPackEnumeration Stage
		{	
			set {@Object[new Guid("764b9c5d-bb4b-7bab-d807-2439c1b8bf5f")].Value = value;}
			get
			{
				if(@Object[new Guid("764b9c5d-bb4b-7bab-d807-2439c1b8bf5f")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("764b9c5d-bb4b-7bab-d807-2439c1b8bf5f")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Enum	
			Id 			: 09594130-66ef-0bb2-1fc8-8cd7e6a5e06e
			Description : Status	
*/
		public ManagementPackEnumeration Status
		{	
			set {@Object[new Guid("09594130-66ef-0bb2-1fc8-8cd7e6a5e06e")].Value = value;}
			get
			{
				if(@Object[new Guid("09594130-66ef-0bb2-1fc8-8cd7e6a5e06e")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("09594130-66ef-0bb2-1fc8-8cd7e6a5e06e")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 029dd446-c76c-ab37-a105-235da4f979dd
			Description : Title	
*/
		public string Title
		{	
			set {@Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value = value;}
			get {
                    if(@Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")]==null || @Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value; 
                    
                }		
			
		}
#endregion
#region Relationships
		public void AddParentWorkItem(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_Activity_ManualActivityClass.Relationships.System_WorkItemContainsActivity;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> ParentWorkItemProjection  
		{
			get{ return emop["WorkItem"];}
		}
				
         
        public IComposableProjection ActivityCreatedByProjection
		{
			get{ return emop["CreatedWorkItem"].FirstOrDefault(); }
		}    
            
		public string ActivityCreatedByName  
		{
			get{
                var projection = emop["CreatedWorkItem"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddActivityCreatedBy(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_WorkItem_Activity_ManualActivityClass.Relationships.System_WorkItemCreatedByUser;
					
			emop.Add(value, endPoint.Target);
		}
		
         
        public IComposableProjection ActivityAssignedToProjection
		{
			get{ return emop["AssignedWorkItem"].FirstOrDefault(); }
		}    
            
		public string ActivityAssignedToName  
		{
			get{
                var projection = emop["AssignedWorkItem"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddActivityAssignedTo(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_WorkItem_Activity_ManualActivityClass.Relationships.System_WorkItemAssignedToUser;
					
			emop.Add(value, endPoint.Target);
		}
		
		public void AddActivityAboutConfigItem(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_Activity_ManualActivityClass.Relationships.System_WorkItemAboutConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> ActivityAboutConfigItemProjection  
		{
			get{ return emop["HasRelatedWorkItems"];}
		}
				
#endregion
		}// end tp class
		}// end mp class
			public class ServiceManager_ChangeManagement_Configuration
			{
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: ServiceManager.ChangeManagement.Configuration
			public class System_WorkItem_ChangeRequestViewProjection  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public System_WorkItem_ChangeRequestViewProjection(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("cdd001ba-837b-4ec6-9839-7f4c4d6dfde7");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("4bd64a2d-d374-4563-fc6f-ad43c6df4284");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static System_WorkItem_ChangeRequestViewProjection Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, System_WorkItem_ChangeRequestClass.GetManagementPackClass());	
					return new  System_WorkItem_ChangeRequestViewProjection(p);
				}
								
				public static System_WorkItem_ChangeRequestViewProjection Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.WorkItem.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.WorkItem']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("cdd001ba-837b-4ec6-9839-7f4c4d6dfde7"), property, id);
					return  new System_WorkItem_ChangeRequestViewProjection(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.DateTime	
			Id 			: 665ed498-2551-7559-dce8-493e1ea171df
			Description : Actual end date	
*/
		public DateTime? ActualEndDate
		{	
			set {@Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value = value;}
			get {
                    if(@Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")]==null || @Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: d3c9aa55-bbc0-964e-716b-99defdac4405
			Description : Actual start date	
*/
		public DateTime? ActualStartDate
		{	
			set {@Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value = value;}
			get {
                    if(@Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")]==null || @Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 307cfd9e-4731-ebe2-3d95-808eba544174
			Description : Area	
*/
		public ManagementPackEnumeration Area
		{	
			set {@Object[new Guid("307cfd9e-4731-ebe2-3d95-808eba544174")].Value = value;}
			get
			{
				if(@Object[new Guid("307cfd9e-4731-ebe2-3d95-808eba544174")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("307cfd9e-4731-ebe2-3d95-808eba544174")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: d5b20722-d119-6702-3308-f987bd5aea75
			Description : Back out Plan	
*/
		public string BackoutPlan
		{	
			set {@Object[new Guid("d5b20722-d119-6702-3308-f987bd5aea75")].Value = value;}
			get {
                    if(@Object[new Guid("d5b20722-d119-6702-3308-f987bd5aea75")]==null || @Object[new Guid("d5b20722-d119-6702-3308-f987bd5aea75")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d5b20722-d119-6702-3308-f987bd5aea75")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 0baca6fa-4afe-ea7f-a060-6ee31d302152
			Description : Category	
*/
		public ManagementPackEnumeration Category
		{	
			set {@Object[new Guid("0baca6fa-4afe-ea7f-a060-6ee31d302152")].Value = value;}
			get
			{
				if(@Object[new Guid("0baca6fa-4afe-ea7f-a060-6ee31d302152")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("0baca6fa-4afe-ea7f-a060-6ee31d302152")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: d57cb7bc-d1d5-9614-0fe5-4002129da88b
			Description : Alternate contact method	
*/
		public string ContactMethod
		{	
			set {@Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value = value;}
			get {
                    if(@Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")]==null || @Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: ae5c5126-8937-8bdd-11f8-a7641bc06645
			Description : Created date	
*/
		public DateTime? CreatedDate
		{	
			set {@Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value = value;}
			get {
                    if(@Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")]==null || @Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: e5162c95-9469-924c-2298-9e351e0dc383
			Description : Description	
*/
		public string Description
		{	
			set {@Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value = value;}
			get {
                    if(@Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")]==null || @Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 28b1c58f-aefa-a449-7496-4805186bd94f
			Description : Work item ID	
*/
		public string Id
		{	
			set {@Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value = value;}
			get {
                    if(@Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")]==null || @Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 767a95c9-96ca-4a43-47dd-62948ac34846
			Description : Impact	
*/
		public ManagementPackEnumeration Impact
		{	
			set {@Object[new Guid("767a95c9-96ca-4a43-47dd-62948ac34846")].Value = value;}
			get
			{
				if(@Object[new Guid("767a95c9-96ca-4a43-47dd-62948ac34846")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("767a95c9-96ca-4a43-47dd-62948ac34846")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: b90e5f89-1e3a-e10f-f6d6-eeee684f896f
			Description : Implementation Plan	
*/
		public string ImplementationPlan
		{	
			set {@Object[new Guid("b90e5f89-1e3a-e10f-f6d6-eeee684f896f")].Value = value;}
			get {
                    if(@Object[new Guid("b90e5f89-1e3a-e10f-f6d6-eeee684f896f")]==null || @Object[new Guid("b90e5f89-1e3a-e10f-f6d6-eeee684f896f")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("b90e5f89-1e3a-e10f-f6d6-eeee684f896f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 9d2434e4-4a09-fcee-81fa-78a3b12d806e
			Description : Implementation Results	
*/
		public ManagementPackEnumeration ImplementationResults
		{	
			set {@Object[new Guid("9d2434e4-4a09-fcee-81fa-78a3b12d806e")].Value = value;}
			get
			{
				if(@Object[new Guid("9d2434e4-4a09-fcee-81fa-78a3b12d806e")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("9d2434e4-4a09-fcee-81fa-78a3b12d806e")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 5cc7ed69-4f78-3d14-1d4d-b17616a2b566
			Description : Notes	
*/
		public string Notes
		{	
			set {@Object[new Guid("5cc7ed69-4f78-3d14-1d4d-b17616a2b566")].Value = value;}
			get {
                    if(@Object[new Guid("5cc7ed69-4f78-3d14-1d4d-b17616a2b566")]==null || @Object[new Guid("5cc7ed69-4f78-3d14-1d4d-b17616a2b566")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("5cc7ed69-4f78-3d14-1d4d-b17616a2b566")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d4e89164-5c63-e88b-b693-5d65244b2529
			Description : Post Implementation Review	
*/
		public string PostImplementationReview
		{	
			set {@Object[new Guid("d4e89164-5c63-e88b-b693-5d65244b2529")].Value = value;}
			get {
                    if(@Object[new Guid("d4e89164-5c63-e88b-b693-5d65244b2529")]==null || @Object[new Guid("d4e89164-5c63-e88b-b693-5d65244b2529")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d4e89164-5c63-e88b-b693-5d65244b2529")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: a9934ada-3307-1e41-b851-f2d9503dbbbe
			Description : Priority	
*/
		public ManagementPackEnumeration Priority
		{	
			set {@Object[new Guid("a9934ada-3307-1e41-b851-f2d9503dbbbe")].Value = value;}
			get
			{
				if(@Object[new Guid("a9934ada-3307-1e41-b851-f2d9503dbbbe")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("a9934ada-3307-1e41-b851-f2d9503dbbbe")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 25f2d99d-2a86-a3f6-5157-8672def02553
			Description : Reason	
*/
		public string Reason
		{	
			set {@Object[new Guid("25f2d99d-2a86-a3f6-5157-8672def02553")].Value = value;}
			get {
                    if(@Object[new Guid("25f2d99d-2a86-a3f6-5157-8672def02553")]==null || @Object[new Guid("25f2d99d-2a86-a3f6-5157-8672def02553")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("25f2d99d-2a86-a3f6-5157-8672def02553")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: 4cb0bdbc-5092-6c7d-1bd3-7fda9df6afd9
			Description : Required By Date	
*/
		public DateTime? RequiredByDate
		{	
			set {@Object[new Guid("4cb0bdbc-5092-6c7d-1bd3-7fda9df6afd9")].Value = value;}
			get {
                    if(@Object[new Guid("4cb0bdbc-5092-6c7d-1bd3-7fda9df6afd9")]==null || @Object[new Guid("4cb0bdbc-5092-6c7d-1bd3-7fda9df6afd9")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("4cb0bdbc-5092-6c7d-1bd3-7fda9df6afd9")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 5e41a9d0-7d74-7c5a-e56e-c72292d9be20
			Description : Risk	
*/
		public ManagementPackEnumeration Risk
		{	
			set {@Object[new Guid("5e41a9d0-7d74-7c5a-e56e-c72292d9be20")].Value = value;}
			get
			{
				if(@Object[new Guid("5e41a9d0-7d74-7c5a-e56e-c72292d9be20")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("5e41a9d0-7d74-7c5a-e56e-c72292d9be20")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 596bc015-b878-950a-12ac-96ed5ee70336
			Description : Risk Assessment Plan	
*/
		public string RiskAssessmentPlan
		{	
			set {@Object[new Guid("596bc015-b878-950a-12ac-96ed5ee70336")].Value = value;}
			get {
                    if(@Object[new Guid("596bc015-b878-950a-12ac-96ed5ee70336")]==null || @Object[new Guid("596bc015-b878-950a-12ac-96ed5ee70336")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("596bc015-b878-950a-12ac-96ed5ee70336")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: 1d59dc56-995b-1884-beef-7663a0103e28
			Description : Scheduled end date	
*/
		public DateTime? ScheduledEndDate
		{	
			set {@Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value = value;}
			get {
                    if(@Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")]==null || @Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: fb3b75ce-5483-b5a0-7498-10c585cef3b4
			Description : Scheduled start date	
*/
		public DateTime? ScheduledStartDate
		{	
			set {@Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value = value;}
			get {
                    if(@Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")]==null || @Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 23659689-c1a7-98b3-bf1c-f352df014a4a
			Description : Status	
*/
		public ManagementPackEnumeration Status
		{	
			set {@Object[new Guid("23659689-c1a7-98b3-bf1c-f352df014a4a")].Value = value;}
			get
			{
				if(@Object[new Guid("23659689-c1a7-98b3-bf1c-f352df014a4a")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("23659689-c1a7-98b3-bf1c-f352df014a4a")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: daa7213f-a107-a1a4-964d-1b21af0ec8fb
			Description : Template Identifier	
*/
		public string TemplateId
		{	
			set {@Object[new Guid("daa7213f-a107-a1a4-964d-1b21af0ec8fb")].Value = value;}
			get {
                    if(@Object[new Guid("daa7213f-a107-a1a4-964d-1b21af0ec8fb")]==null || @Object[new Guid("daa7213f-a107-a1a4-964d-1b21af0ec8fb")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("daa7213f-a107-a1a4-964d-1b21af0ec8fb")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 49e207e5-44b7-2ccb-c062-f7c50db03b57
			Description : Test Plan	
*/
		public string TestPlan
		{	
			set {@Object[new Guid("49e207e5-44b7-2ccb-c062-f7c50db03b57")].Value = value;}
			get {
                    if(@Object[new Guid("49e207e5-44b7-2ccb-c062-f7c50db03b57")]==null || @Object[new Guid("49e207e5-44b7-2ccb-c062-f7c50db03b57")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("49e207e5-44b7-2ccb-c062-f7c50db03b57")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 029dd446-c76c-ab37-a105-235da4f979dd
			Description : Title	
*/
		public string Title
		{	
			set {@Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value = value;}
			get {
                    if(@Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")]==null || @Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value; 
                    
                }		
			
		}
#endregion
#region Relationships
         
        public IComposableProjection AssignedToProjection
		{
			get{ return emop["AssignedWorkItem"].FirstOrDefault(); }
		}    
            
		public string AssignedToName  
		{
			get{
                var projection = emop["AssignedWorkItem"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddAssignedTo(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_WorkItem_ChangeRequestClass.Relationships.System_WorkItemAssignedToUser;
					
			emop.Add(value, endPoint.Target);
		}
		
#endregion
		}// end tp class
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: ServiceManager.ChangeManagement.Configuration
			public class System_WorkItem_ChangeRequestAndActivityViewProjection  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public System_WorkItem_ChangeRequestAndActivityViewProjection(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("75e107f7-a19c-5902-e734-f74baaf61bea");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("4bd64a2d-d374-4563-fc6f-ad43c6df4284");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static System_WorkItem_ChangeRequestAndActivityViewProjection Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, System_WorkItem_ChangeRequestClass.GetManagementPackClass());	
					return new  System_WorkItem_ChangeRequestAndActivityViewProjection(p);
				}
								
				public static System_WorkItem_ChangeRequestAndActivityViewProjection Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.WorkItem.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.WorkItem']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("75e107f7-a19c-5902-e734-f74baaf61bea"), property, id);
					return  new System_WorkItem_ChangeRequestAndActivityViewProjection(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.DateTime	
			Id 			: 665ed498-2551-7559-dce8-493e1ea171df
			Description : Actual end date	
*/
		public DateTime? ActualEndDate
		{	
			set {@Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value = value;}
			get {
                    if(@Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")]==null || @Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: d3c9aa55-bbc0-964e-716b-99defdac4405
			Description : Actual start date	
*/
		public DateTime? ActualStartDate
		{	
			set {@Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value = value;}
			get {
                    if(@Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")]==null || @Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 307cfd9e-4731-ebe2-3d95-808eba544174
			Description : Area	
*/
		public ManagementPackEnumeration Area
		{	
			set {@Object[new Guid("307cfd9e-4731-ebe2-3d95-808eba544174")].Value = value;}
			get
			{
				if(@Object[new Guid("307cfd9e-4731-ebe2-3d95-808eba544174")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("307cfd9e-4731-ebe2-3d95-808eba544174")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: d5b20722-d119-6702-3308-f987bd5aea75
			Description : Back out Plan	
*/
		public string BackoutPlan
		{	
			set {@Object[new Guid("d5b20722-d119-6702-3308-f987bd5aea75")].Value = value;}
			get {
                    if(@Object[new Guid("d5b20722-d119-6702-3308-f987bd5aea75")]==null || @Object[new Guid("d5b20722-d119-6702-3308-f987bd5aea75")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d5b20722-d119-6702-3308-f987bd5aea75")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 0baca6fa-4afe-ea7f-a060-6ee31d302152
			Description : Category	
*/
		public ManagementPackEnumeration Category
		{	
			set {@Object[new Guid("0baca6fa-4afe-ea7f-a060-6ee31d302152")].Value = value;}
			get
			{
				if(@Object[new Guid("0baca6fa-4afe-ea7f-a060-6ee31d302152")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("0baca6fa-4afe-ea7f-a060-6ee31d302152")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: d57cb7bc-d1d5-9614-0fe5-4002129da88b
			Description : Alternate contact method	
*/
		public string ContactMethod
		{	
			set {@Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value = value;}
			get {
                    if(@Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")]==null || @Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: ae5c5126-8937-8bdd-11f8-a7641bc06645
			Description : Created date	
*/
		public DateTime? CreatedDate
		{	
			set {@Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value = value;}
			get {
                    if(@Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")]==null || @Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: e5162c95-9469-924c-2298-9e351e0dc383
			Description : Description	
*/
		public string Description
		{	
			set {@Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value = value;}
			get {
                    if(@Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")]==null || @Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 28b1c58f-aefa-a449-7496-4805186bd94f
			Description : Work item ID	
*/
		public string Id
		{	
			set {@Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value = value;}
			get {
                    if(@Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")]==null || @Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 767a95c9-96ca-4a43-47dd-62948ac34846
			Description : Impact	
*/
		public ManagementPackEnumeration Impact
		{	
			set {@Object[new Guid("767a95c9-96ca-4a43-47dd-62948ac34846")].Value = value;}
			get
			{
				if(@Object[new Guid("767a95c9-96ca-4a43-47dd-62948ac34846")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("767a95c9-96ca-4a43-47dd-62948ac34846")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: b90e5f89-1e3a-e10f-f6d6-eeee684f896f
			Description : Implementation Plan	
*/
		public string ImplementationPlan
		{	
			set {@Object[new Guid("b90e5f89-1e3a-e10f-f6d6-eeee684f896f")].Value = value;}
			get {
                    if(@Object[new Guid("b90e5f89-1e3a-e10f-f6d6-eeee684f896f")]==null || @Object[new Guid("b90e5f89-1e3a-e10f-f6d6-eeee684f896f")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("b90e5f89-1e3a-e10f-f6d6-eeee684f896f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 9d2434e4-4a09-fcee-81fa-78a3b12d806e
			Description : Implementation Results	
*/
		public ManagementPackEnumeration ImplementationResults
		{	
			set {@Object[new Guid("9d2434e4-4a09-fcee-81fa-78a3b12d806e")].Value = value;}
			get
			{
				if(@Object[new Guid("9d2434e4-4a09-fcee-81fa-78a3b12d806e")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("9d2434e4-4a09-fcee-81fa-78a3b12d806e")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 5cc7ed69-4f78-3d14-1d4d-b17616a2b566
			Description : Notes	
*/
		public string Notes
		{	
			set {@Object[new Guid("5cc7ed69-4f78-3d14-1d4d-b17616a2b566")].Value = value;}
			get {
                    if(@Object[new Guid("5cc7ed69-4f78-3d14-1d4d-b17616a2b566")]==null || @Object[new Guid("5cc7ed69-4f78-3d14-1d4d-b17616a2b566")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("5cc7ed69-4f78-3d14-1d4d-b17616a2b566")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d4e89164-5c63-e88b-b693-5d65244b2529
			Description : Post Implementation Review	
*/
		public string PostImplementationReview
		{	
			set {@Object[new Guid("d4e89164-5c63-e88b-b693-5d65244b2529")].Value = value;}
			get {
                    if(@Object[new Guid("d4e89164-5c63-e88b-b693-5d65244b2529")]==null || @Object[new Guid("d4e89164-5c63-e88b-b693-5d65244b2529")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d4e89164-5c63-e88b-b693-5d65244b2529")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: a9934ada-3307-1e41-b851-f2d9503dbbbe
			Description : Priority	
*/
		public ManagementPackEnumeration Priority
		{	
			set {@Object[new Guid("a9934ada-3307-1e41-b851-f2d9503dbbbe")].Value = value;}
			get
			{
				if(@Object[new Guid("a9934ada-3307-1e41-b851-f2d9503dbbbe")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("a9934ada-3307-1e41-b851-f2d9503dbbbe")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 25f2d99d-2a86-a3f6-5157-8672def02553
			Description : Reason	
*/
		public string Reason
		{	
			set {@Object[new Guid("25f2d99d-2a86-a3f6-5157-8672def02553")].Value = value;}
			get {
                    if(@Object[new Guid("25f2d99d-2a86-a3f6-5157-8672def02553")]==null || @Object[new Guid("25f2d99d-2a86-a3f6-5157-8672def02553")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("25f2d99d-2a86-a3f6-5157-8672def02553")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: 4cb0bdbc-5092-6c7d-1bd3-7fda9df6afd9
			Description : Required By Date	
*/
		public DateTime? RequiredByDate
		{	
			set {@Object[new Guid("4cb0bdbc-5092-6c7d-1bd3-7fda9df6afd9")].Value = value;}
			get {
                    if(@Object[new Guid("4cb0bdbc-5092-6c7d-1bd3-7fda9df6afd9")]==null || @Object[new Guid("4cb0bdbc-5092-6c7d-1bd3-7fda9df6afd9")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("4cb0bdbc-5092-6c7d-1bd3-7fda9df6afd9")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 5e41a9d0-7d74-7c5a-e56e-c72292d9be20
			Description : Risk	
*/
		public ManagementPackEnumeration Risk
		{	
			set {@Object[new Guid("5e41a9d0-7d74-7c5a-e56e-c72292d9be20")].Value = value;}
			get
			{
				if(@Object[new Guid("5e41a9d0-7d74-7c5a-e56e-c72292d9be20")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("5e41a9d0-7d74-7c5a-e56e-c72292d9be20")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 596bc015-b878-950a-12ac-96ed5ee70336
			Description : Risk Assessment Plan	
*/
		public string RiskAssessmentPlan
		{	
			set {@Object[new Guid("596bc015-b878-950a-12ac-96ed5ee70336")].Value = value;}
			get {
                    if(@Object[new Guid("596bc015-b878-950a-12ac-96ed5ee70336")]==null || @Object[new Guid("596bc015-b878-950a-12ac-96ed5ee70336")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("596bc015-b878-950a-12ac-96ed5ee70336")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: 1d59dc56-995b-1884-beef-7663a0103e28
			Description : Scheduled end date	
*/
		public DateTime? ScheduledEndDate
		{	
			set {@Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value = value;}
			get {
                    if(@Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")]==null || @Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: fb3b75ce-5483-b5a0-7498-10c585cef3b4
			Description : Scheduled start date	
*/
		public DateTime? ScheduledStartDate
		{	
			set {@Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value = value;}
			get {
                    if(@Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")]==null || @Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 23659689-c1a7-98b3-bf1c-f352df014a4a
			Description : Status	
*/
		public ManagementPackEnumeration Status
		{	
			set {@Object[new Guid("23659689-c1a7-98b3-bf1c-f352df014a4a")].Value = value;}
			get
			{
				if(@Object[new Guid("23659689-c1a7-98b3-bf1c-f352df014a4a")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("23659689-c1a7-98b3-bf1c-f352df014a4a")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: daa7213f-a107-a1a4-964d-1b21af0ec8fb
			Description : Template Identifier	
*/
		public string TemplateId
		{	
			set {@Object[new Guid("daa7213f-a107-a1a4-964d-1b21af0ec8fb")].Value = value;}
			get {
                    if(@Object[new Guid("daa7213f-a107-a1a4-964d-1b21af0ec8fb")]==null || @Object[new Guid("daa7213f-a107-a1a4-964d-1b21af0ec8fb")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("daa7213f-a107-a1a4-964d-1b21af0ec8fb")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 49e207e5-44b7-2ccb-c062-f7c50db03b57
			Description : Test Plan	
*/
		public string TestPlan
		{	
			set {@Object[new Guid("49e207e5-44b7-2ccb-c062-f7c50db03b57")].Value = value;}
			get {
                    if(@Object[new Guid("49e207e5-44b7-2ccb-c062-f7c50db03b57")]==null || @Object[new Guid("49e207e5-44b7-2ccb-c062-f7c50db03b57")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("49e207e5-44b7-2ccb-c062-f7c50db03b57")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 029dd446-c76c-ab37-a105-235da4f979dd
			Description : Title	
*/
		public string Title
		{	
			set {@Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value = value;}
			get {
                    if(@Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")]==null || @Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value; 
                    
                }		
			
		}
#endregion
#region Relationships
		public void AddActivity(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_ChangeRequestClass.Relationships.System_WorkItemContainsActivity;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> ActivityProjection  
		{
			get{ return emop["Activity"];}
		}
				
         
        public IComposableProjection AssignedToProjection
		{
			get{ return emop["AssignedWorkItem"].FirstOrDefault(); }
		}    
            
		public string AssignedToName  
		{
			get{
                var projection = emop["AssignedWorkItem"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddAssignedTo(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_WorkItem_ChangeRequestClass.Relationships.System_WorkItemAssignedToUser;
					
			emop.Add(value, endPoint.Target);
		}
		
#endregion
		}// end tp class
		}// end mp class
			public class ServiceManager_ChangeManagement_Library
			{
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: ServiceManager.ChangeManagement.Library
			public class System_FileAttachmentProjection  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public System_FileAttachmentProjection(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("1799f9e5-aef5-901b-379d-116ccc8c27e4");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("2bf6413b-bb6c-1108-d33a-152c9d1db56b");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static System_FileAttachmentProjection Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, System_FileAttachmentClass.GetManagementPackClass());	
					return new  System_FileAttachmentProjection(p);
				}
								
				public static System_FileAttachmentProjection Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.SupportingItem.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.Information']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("1799f9e5-aef5-901b-379d-116ccc8c27e4"), property, id);
					return  new System_FileAttachmentProjection(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.DateTime	
			Id 			: b27d985e-8104-0789-7488-2106f22f77f1
			Description : Added Date	
*/
		public DateTime? AddedDate
		{	
			set {@Object[new Guid("b27d985e-8104-0789-7488-2106f22f77f1")].Value = value;}
			get {
                    if(@Object[new Guid("b27d985e-8104-0789-7488-2106f22f77f1")]==null || @Object[new Guid("b27d985e-8104-0789-7488-2106f22f77f1")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("b27d985e-8104-0789-7488-2106f22f77f1")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.IO.Stream	
			Id 			: 88aee6e7-0df7-2c06-a92d-8589864781d6
			Description : Content	
*/
		public Stream Content
		{	
			set {@Object[new Guid("88aee6e7-0df7-2c06-a92d-8589864781d6")].Value = value;}
			get {
                    if(@Object[new Guid("88aee6e7-0df7-2c06-a92d-8589864781d6")]==null || @Object[new Guid("88aee6e7-0df7-2c06-a92d-8589864781d6")].Value==null) 
                        return default(Stream) ;    
                    return (Stream) @Object[new Guid("88aee6e7-0df7-2c06-a92d-8589864781d6")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 47e9627e-114b-620b-f5e8-05b2dbabc842
			Description : Description	
*/
		public string Description
		{	
			set {@Object[new Guid("47e9627e-114b-620b-f5e8-05b2dbabc842")].Value = value;}
			get {
                    if(@Object[new Guid("47e9627e-114b-620b-f5e8-05b2dbabc842")]==null || @Object[new Guid("47e9627e-114b-620b-f5e8-05b2dbabc842")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("47e9627e-114b-620b-f5e8-05b2dbabc842")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 4fa82b7f-ab97-cdde-09c5-6236b186cf75
			Description : Extension	
*/
		public string Extension
		{	
			set {@Object[new Guid("4fa82b7f-ab97-cdde-09c5-6236b186cf75")].Value = value;}
			get {
                    if(@Object[new Guid("4fa82b7f-ab97-cdde-09c5-6236b186cf75")]==null || @Object[new Guid("4fa82b7f-ab97-cdde-09c5-6236b186cf75")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("4fa82b7f-ab97-cdde-09c5-6236b186cf75")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 0efde233-2432-1092-c049-b614b6e3e9bf
			Description : ID	
*/
		public string Id
		{	
			set {@Object[new Guid("0efde233-2432-1092-c049-b614b6e3e9bf")].Value = value;}
			get {
                    if(@Object[new Guid("0efde233-2432-1092-c049-b614b6e3e9bf")]==null || @Object[new Guid("0efde233-2432-1092-c049-b614b6e3e9bf")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("0efde233-2432-1092-c049-b614b6e3e9bf")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Int32	
			Id 			: a3e2fc65-7cca-d3e6-0b4d-f030dead9d7b
			Description : Size	
*/
		public int Size
		{	
			set {@Object[new Guid("a3e2fc65-7cca-d3e6-0b4d-f030dead9d7b")].Value = value;}
			get {
                    if(@Object[new Guid("a3e2fc65-7cca-d3e6-0b4d-f030dead9d7b")]==null || @Object[new Guid("a3e2fc65-7cca-d3e6-0b4d-f030dead9d7b")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("a3e2fc65-7cca-d3e6-0b4d-f030dead9d7b")].Value; 
                    
                }		
			
		}
#endregion
#region Relationships
         
        public IComposableProjection FileAttachmentAddedByProjection
		{
			get{ return emop["AddedBy"].FirstOrDefault(); }
		}    
            
		public string FileAttachmentAddedByName  
		{
			get{
                var projection = emop["AddedBy"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddFileAttachmentAddedBy(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_FileAttachmentClass.Relationships.System_FileAttachmentAddedByUser;
					
			emop.Add(value, endPoint.Target);
		}
		
#endregion
		}// end tp class
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: ServiceManager.ChangeManagement.Library
			public class System_WorkItem_ChangeRequestProjection  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public System_WorkItem_ChangeRequestProjection(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("674194d8-0246-7b90-d871-e1ea015b2ea7");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("2bf6413b-bb6c-1108-d33a-152c9d1db56b");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static System_WorkItem_ChangeRequestProjection Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, System_WorkItem_ChangeRequestClass.GetManagementPackClass());	
					return new  System_WorkItem_ChangeRequestProjection(p);
				}
								
				public static System_WorkItem_ChangeRequestProjection Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.WorkItem.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.WorkItem']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("674194d8-0246-7b90-d871-e1ea015b2ea7"), property, id);
					return  new System_WorkItem_ChangeRequestProjection(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.DateTime	
			Id 			: 665ed498-2551-7559-dce8-493e1ea171df
			Description : Actual end date	
*/
		public DateTime? ActualEndDate
		{	
			set {@Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value = value;}
			get {
                    if(@Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")]==null || @Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: d3c9aa55-bbc0-964e-716b-99defdac4405
			Description : Actual start date	
*/
		public DateTime? ActualStartDate
		{	
			set {@Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value = value;}
			get {
                    if(@Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")]==null || @Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 307cfd9e-4731-ebe2-3d95-808eba544174
			Description : Area	
*/
		public ManagementPackEnumeration Area
		{	
			set {@Object[new Guid("307cfd9e-4731-ebe2-3d95-808eba544174")].Value = value;}
			get
			{
				if(@Object[new Guid("307cfd9e-4731-ebe2-3d95-808eba544174")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("307cfd9e-4731-ebe2-3d95-808eba544174")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: d5b20722-d119-6702-3308-f987bd5aea75
			Description : Back out Plan	
*/
		public string BackoutPlan
		{	
			set {@Object[new Guid("d5b20722-d119-6702-3308-f987bd5aea75")].Value = value;}
			get {
                    if(@Object[new Guid("d5b20722-d119-6702-3308-f987bd5aea75")]==null || @Object[new Guid("d5b20722-d119-6702-3308-f987bd5aea75")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d5b20722-d119-6702-3308-f987bd5aea75")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 0baca6fa-4afe-ea7f-a060-6ee31d302152
			Description : Category	
*/
		public ManagementPackEnumeration Category
		{	
			set {@Object[new Guid("0baca6fa-4afe-ea7f-a060-6ee31d302152")].Value = value;}
			get
			{
				if(@Object[new Guid("0baca6fa-4afe-ea7f-a060-6ee31d302152")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("0baca6fa-4afe-ea7f-a060-6ee31d302152")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: d57cb7bc-d1d5-9614-0fe5-4002129da88b
			Description : Alternate contact method	
*/
		public string ContactMethod
		{	
			set {@Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value = value;}
			get {
                    if(@Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")]==null || @Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: ae5c5126-8937-8bdd-11f8-a7641bc06645
			Description : Created date	
*/
		public DateTime? CreatedDate
		{	
			set {@Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value = value;}
			get {
                    if(@Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")]==null || @Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: e5162c95-9469-924c-2298-9e351e0dc383
			Description : Description	
*/
		public string Description
		{	
			set {@Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value = value;}
			get {
                    if(@Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")]==null || @Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 28b1c58f-aefa-a449-7496-4805186bd94f
			Description : Work item ID	
*/
		public string Id
		{	
			set {@Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value = value;}
			get {
                    if(@Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")]==null || @Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 767a95c9-96ca-4a43-47dd-62948ac34846
			Description : Impact	
*/
		public ManagementPackEnumeration Impact
		{	
			set {@Object[new Guid("767a95c9-96ca-4a43-47dd-62948ac34846")].Value = value;}
			get
			{
				if(@Object[new Guid("767a95c9-96ca-4a43-47dd-62948ac34846")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("767a95c9-96ca-4a43-47dd-62948ac34846")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: b90e5f89-1e3a-e10f-f6d6-eeee684f896f
			Description : Implementation Plan	
*/
		public string ImplementationPlan
		{	
			set {@Object[new Guid("b90e5f89-1e3a-e10f-f6d6-eeee684f896f")].Value = value;}
			get {
                    if(@Object[new Guid("b90e5f89-1e3a-e10f-f6d6-eeee684f896f")]==null || @Object[new Guid("b90e5f89-1e3a-e10f-f6d6-eeee684f896f")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("b90e5f89-1e3a-e10f-f6d6-eeee684f896f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 9d2434e4-4a09-fcee-81fa-78a3b12d806e
			Description : Implementation Results	
*/
		public ManagementPackEnumeration ImplementationResults
		{	
			set {@Object[new Guid("9d2434e4-4a09-fcee-81fa-78a3b12d806e")].Value = value;}
			get
			{
				if(@Object[new Guid("9d2434e4-4a09-fcee-81fa-78a3b12d806e")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("9d2434e4-4a09-fcee-81fa-78a3b12d806e")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 5cc7ed69-4f78-3d14-1d4d-b17616a2b566
			Description : Notes	
*/
		public string Notes
		{	
			set {@Object[new Guid("5cc7ed69-4f78-3d14-1d4d-b17616a2b566")].Value = value;}
			get {
                    if(@Object[new Guid("5cc7ed69-4f78-3d14-1d4d-b17616a2b566")]==null || @Object[new Guid("5cc7ed69-4f78-3d14-1d4d-b17616a2b566")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("5cc7ed69-4f78-3d14-1d4d-b17616a2b566")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d4e89164-5c63-e88b-b693-5d65244b2529
			Description : Post Implementation Review	
*/
		public string PostImplementationReview
		{	
			set {@Object[new Guid("d4e89164-5c63-e88b-b693-5d65244b2529")].Value = value;}
			get {
                    if(@Object[new Guid("d4e89164-5c63-e88b-b693-5d65244b2529")]==null || @Object[new Guid("d4e89164-5c63-e88b-b693-5d65244b2529")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d4e89164-5c63-e88b-b693-5d65244b2529")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: a9934ada-3307-1e41-b851-f2d9503dbbbe
			Description : Priority	
*/
		public ManagementPackEnumeration Priority
		{	
			set {@Object[new Guid("a9934ada-3307-1e41-b851-f2d9503dbbbe")].Value = value;}
			get
			{
				if(@Object[new Guid("a9934ada-3307-1e41-b851-f2d9503dbbbe")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("a9934ada-3307-1e41-b851-f2d9503dbbbe")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 25f2d99d-2a86-a3f6-5157-8672def02553
			Description : Reason	
*/
		public string Reason
		{	
			set {@Object[new Guid("25f2d99d-2a86-a3f6-5157-8672def02553")].Value = value;}
			get {
                    if(@Object[new Guid("25f2d99d-2a86-a3f6-5157-8672def02553")]==null || @Object[new Guid("25f2d99d-2a86-a3f6-5157-8672def02553")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("25f2d99d-2a86-a3f6-5157-8672def02553")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: 4cb0bdbc-5092-6c7d-1bd3-7fda9df6afd9
			Description : Required By Date	
*/
		public DateTime? RequiredByDate
		{	
			set {@Object[new Guid("4cb0bdbc-5092-6c7d-1bd3-7fda9df6afd9")].Value = value;}
			get {
                    if(@Object[new Guid("4cb0bdbc-5092-6c7d-1bd3-7fda9df6afd9")]==null || @Object[new Guid("4cb0bdbc-5092-6c7d-1bd3-7fda9df6afd9")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("4cb0bdbc-5092-6c7d-1bd3-7fda9df6afd9")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 5e41a9d0-7d74-7c5a-e56e-c72292d9be20
			Description : Risk	
*/
		public ManagementPackEnumeration Risk
		{	
			set {@Object[new Guid("5e41a9d0-7d74-7c5a-e56e-c72292d9be20")].Value = value;}
			get
			{
				if(@Object[new Guid("5e41a9d0-7d74-7c5a-e56e-c72292d9be20")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("5e41a9d0-7d74-7c5a-e56e-c72292d9be20")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 596bc015-b878-950a-12ac-96ed5ee70336
			Description : Risk Assessment Plan	
*/
		public string RiskAssessmentPlan
		{	
			set {@Object[new Guid("596bc015-b878-950a-12ac-96ed5ee70336")].Value = value;}
			get {
                    if(@Object[new Guid("596bc015-b878-950a-12ac-96ed5ee70336")]==null || @Object[new Guid("596bc015-b878-950a-12ac-96ed5ee70336")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("596bc015-b878-950a-12ac-96ed5ee70336")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: 1d59dc56-995b-1884-beef-7663a0103e28
			Description : Scheduled end date	
*/
		public DateTime? ScheduledEndDate
		{	
			set {@Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value = value;}
			get {
                    if(@Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")]==null || @Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: fb3b75ce-5483-b5a0-7498-10c585cef3b4
			Description : Scheduled start date	
*/
		public DateTime? ScheduledStartDate
		{	
			set {@Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value = value;}
			get {
                    if(@Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")]==null || @Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 23659689-c1a7-98b3-bf1c-f352df014a4a
			Description : Status	
*/
		public ManagementPackEnumeration Status
		{	
			set {@Object[new Guid("23659689-c1a7-98b3-bf1c-f352df014a4a")].Value = value;}
			get
			{
				if(@Object[new Guid("23659689-c1a7-98b3-bf1c-f352df014a4a")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("23659689-c1a7-98b3-bf1c-f352df014a4a")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: daa7213f-a107-a1a4-964d-1b21af0ec8fb
			Description : Template Identifier	
*/
		public string TemplateId
		{	
			set {@Object[new Guid("daa7213f-a107-a1a4-964d-1b21af0ec8fb")].Value = value;}
			get {
                    if(@Object[new Guid("daa7213f-a107-a1a4-964d-1b21af0ec8fb")]==null || @Object[new Guid("daa7213f-a107-a1a4-964d-1b21af0ec8fb")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("daa7213f-a107-a1a4-964d-1b21af0ec8fb")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 49e207e5-44b7-2ccb-c062-f7c50db03b57
			Description : Test Plan	
*/
		public string TestPlan
		{	
			set {@Object[new Guid("49e207e5-44b7-2ccb-c062-f7c50db03b57")].Value = value;}
			get {
                    if(@Object[new Guid("49e207e5-44b7-2ccb-c062-f7c50db03b57")]==null || @Object[new Guid("49e207e5-44b7-2ccb-c062-f7c50db03b57")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("49e207e5-44b7-2ccb-c062-f7c50db03b57")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 029dd446-c76c-ab37-a105-235da4f979dd
			Description : Title	
*/
		public string Title
		{	
			set {@Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value = value;}
			get {
                    if(@Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")]==null || @Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value; 
                    
                }		
			
		}
#endregion
#region Relationships
		public void AddActivity(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_ChangeRequestClass.Relationships.System_WorkItemContainsActivity;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> ActivityProjection  
		{
			get{ return emop["Activity"];}
		}
				
         
        public IComposableProjection CreatedByProjection
		{
			get{ return emop["CreatedWorkItem"].FirstOrDefault(); }
		}    
            
		public string CreatedByName  
		{
			get{
                var projection = emop["CreatedWorkItem"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddCreatedBy(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_WorkItem_ChangeRequestClass.Relationships.System_WorkItemCreatedByUser;
					
			emop.Add(value, endPoint.Target);
		}
		
         
        public IComposableProjection AssignedToProjection
		{
			get{ return emop["AssignedWorkItem"].FirstOrDefault(); }
		}    
            
		public string AssignedToName  
		{
			get{
                var projection = emop["AssignedWorkItem"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddAssignedTo(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_WorkItem_ChangeRequestClass.Relationships.System_WorkItemAssignedToUser;
					
			emop.Add(value, endPoint.Target);
		}
		
         
        public IComposableProjection AffectedUserProjection
		{
			get{ return emop["RequestedWorkItem"].FirstOrDefault(); }
		}    
            
		public string AffectedUserName  
		{
			get{
                var projection = emop["RequestedWorkItem"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddAffectedUser(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_WorkItem_ChangeRequestClass.Relationships.System_WorkItemAffectedUser;
					
			emop.Add(value, endPoint.Target);
		}
		
		public void AddRelatedWorkItem(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_ChangeRequestClass.Relationships.System_WorkItemRelatesToWorkItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> RelatedWorkItemProjection  
		{
			get{ return emop["RelatesToWorkItem_"];}
		}
				
		public void AddRelatedWorkItemSource(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_ChangeRequestClass.Relationships.System_WorkItemRelatesToWorkItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> RelatedWorkItemSourceProjection  
		{
			get{ return emop["RelatesToWorkItem"];}
		}
				
		public void AddRelatedConfigItem(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_ChangeRequestClass.Relationships.System_WorkItemRelatesToConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> RelatedConfigItemProjection  
		{
			get{ return emop["RelatesToConfigItem"];}
		}
				
		public void AddAboutConfigItem(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_ChangeRequestClass.Relationships.System_WorkItemAboutConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> AboutConfigItemProjection  
		{
			get{ return emop["HasRelatedWorkItems"];}
		}
				
		public void AddFileAttachment(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_ChangeRequestClass.Relationships.System_WorkItemHasFileAttachment;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> FileAttachmentProjection  
		{
			get{ return emop["FileAttachment"];}
		}
				
		public void AddRelatedKnowledge(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_ChangeRequestClass.Relationships.System_EntityLinksToKnowledgeDocument;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> RelatedKnowledgeProjection  
		{
			get{ return emop["KnowledgeDocument"];}
		}
				
#endregion
		}// end tp class
		}// end mp class
			public class ServiceManager_ConfigurationManagement_Configuration
			{
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: ServiceManager.ConfigurationManagement.Configuration
			public class Microsoft_Windows_AffectedByIncidentComputerView_ProjectionType  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public Microsoft_Windows_AffectedByIncidentComputerView_ProjectionType(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("933d4197-341d-cad8-67ab-0db9c74bbbd4");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("6f584aa4-713d-5ed7-8f8d-75fd6cf0deb0");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static Microsoft_Windows_AffectedByIncidentComputerView_ProjectionType Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, Microsoft_Windows_ComputerClass.GetManagementPackClass());	
					return new  Microsoft_Windows_AffectedByIncidentComputerView_ProjectionType(p);
				}
								
				public static Microsoft_Windows_AffectedByIncidentComputerView_ProjectionType Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.Computer']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("933d4197-341d-cad8-67ab-0db9c74bbbd4"), property, id);
					return  new Microsoft_Windows_AffectedByIncidentComputerView_ProjectionType(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.String	
			Id 			: 488183e9-d2bb-2dd8-b872-18a20a1c9fa6
			Description : The AD Security Identifier for this computer	
*/
		public string ActiveDirectoryObjectSid
		{	
			set {@Object[new Guid("488183e9-d2bb-2dd8-b872-18a20a1c9fa6")].Value = value;}
			get {
                    if(@Object[new Guid("488183e9-d2bb-2dd8-b872-18a20a1c9fa6")]==null || @Object[new Guid("488183e9-d2bb-2dd8-b872-18a20a1c9fa6")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("488183e9-d2bb-2dd8-b872-18a20a1c9fa6")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 4a1e1c69-c659-af91-e7a8-d886008032f3
			Description : Active Directory Site	
*/
		public string ActiveDirectorySite
		{	
			set {@Object[new Guid("4a1e1c69-c659-af91-e7a8-d886008032f3")].Value = value;}
			get {
                    if(@Object[new Guid("4a1e1c69-c659-af91-e7a8-d886008032f3")]==null || @Object[new Guid("4a1e1c69-c659-af91-e7a8-d886008032f3")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("4a1e1c69-c659-af91-e7a8-d886008032f3")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: a6b7ea8d-9423-8529-cb21-87ac1a21fdcb
			Description : Asset status	
*/
		public ManagementPackEnumeration AssetStatus
		{	
			set {@Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")].Value = value;}
			get
			{
				if(@Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d3b003ee-7bb7-6456-2d45-c2e764df37a6
			Description : The fully qualified domain name of this computer.	
*/
		public string DNSName
		{	
			set {@Object[new Guid("d3b003ee-7bb7-6456-2d45-c2e764df37a6")].Value = value;}
			get {
                    if(@Object[new Guid("d3b003ee-7bb7-6456-2d45-c2e764df37a6")]==null || @Object[new Guid("d3b003ee-7bb7-6456-2d45-c2e764df37a6")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d3b003ee-7bb7-6456-2d45-c2e764df37a6")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 9f2cafc8-7a18-1c76-b709-d51b01d3b3d3
			Description : DNS Domain Name	
*/
		public string DomainDnsName
		{	
			set {@Object[new Guid("9f2cafc8-7a18-1c76-b709-d51b01d3b3d3")].Value = value;}
			get {
                    if(@Object[new Guid("9f2cafc8-7a18-1c76-b709-d51b01d3b3d3")]==null || @Object[new Guid("9f2cafc8-7a18-1c76-b709-d51b01d3b3d3")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("9f2cafc8-7a18-1c76-b709-d51b01d3b3d3")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 1704a09d-8063-021a-9b80-2c47622ecf0f
			Description : DNS Forest Name	
*/
		public string ForestDnsName
		{	
			set {@Object[new Guid("1704a09d-8063-021a-9b80-2c47622ecf0f")].Value = value;}
			get {
                    if(@Object[new Guid("1704a09d-8063-021a-9b80-2c47622ecf0f")]==null || @Object[new Guid("1704a09d-8063-021a-9b80-2c47622ecf0f")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("1704a09d-8063-021a-9b80-2c47622ecf0f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: f97e7c31-f713-e2a6-0450-239a62363651
			Description : The IP address for this computer.	
*/
		public string IPAddress
		{	
			set {@Object[new Guid("f97e7c31-f713-e2a6-0450-239a62363651")].Value = value;}
			get {
                    if(@Object[new Guid("f97e7c31-f713-e2a6-0450-239a62363651")]==null || @Object[new Guid("f97e7c31-f713-e2a6-0450-239a62363651")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("f97e7c31-f713-e2a6-0450-239a62363651")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: 6832a546-b39d-aff8-94e1-660bbd336687
			Description : Virtual Machine	
*/
		public bool? IsVirtualMachine
		{	
			set {@Object[new Guid("6832a546-b39d-aff8-94e1-660bbd336687")].Value = value;}
			get
			{
				if(@Object[new Guid("6832a546-b39d-aff8-94e1-660bbd336687")] != null)
				return  (bool?) @Object[new Guid("6832a546-b39d-aff8-94e1-660bbd336687")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.DateTime	
			Id 			: 6223ef72-50de-b1fb-d666-397cefd264ea
			Description : Last Inventory Date	
*/
		public DateTime? LastInventoryDate
		{	
			set {@Object[new Guid("6223ef72-50de-b1fb-d666-397cefd264ea")].Value = value;}
			get {
                    if(@Object[new Guid("6223ef72-50de-b1fb-d666-397cefd264ea")]==null || @Object[new Guid("6223ef72-50de-b1fb-d666-397cefd264ea")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("6223ef72-50de-b1fb-d666-397cefd264ea")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Int32	
			Id 			: 02563965-6649-f495-aeb7-bd8a6eab33a7
			Description : Logical Processors	
*/
		public int LogicalProcessors
		{	
			set {@Object[new Guid("02563965-6649-f495-aeb7-bd8a6eab33a7")].Value = value;}
			get {
                    if(@Object[new Guid("02563965-6649-f495-aeb7-bd8a6eab33a7")]==null || @Object[new Guid("02563965-6649-f495-aeb7-bd8a6eab33a7")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("02563965-6649-f495-aeb7-bd8a6eab33a7")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 879a4dee-444f-186b-cc6f-2e9cb89d87c3
			Description : The NetBIOS name for this computer.	
*/
		public string NetbiosComputerName
		{	
			set {@Object[new Guid("879a4dee-444f-186b-cc6f-2e9cb89d87c3")].Value = value;}
			get {
                    if(@Object[new Guid("879a4dee-444f-186b-cc6f-2e9cb89d87c3")]==null || @Object[new Guid("879a4dee-444f-186b-cc6f-2e9cb89d87c3")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("879a4dee-444f-186b-cc6f-2e9cb89d87c3")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 756493d6-f2a2-4f35-8970-953d7c828cd0
			Description : The NetBIOS domain name for this computer.	
*/
		public string NetbiosDomainName
		{	
			set {@Object[new Guid("756493d6-f2a2-4f35-8970-953d7c828cd0")].Value = value;}
			get {
                    if(@Object[new Guid("756493d6-f2a2-4f35-8970-953d7c828cd0")]==null || @Object[new Guid("756493d6-f2a2-4f35-8970-953d7c828cd0")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("756493d6-f2a2-4f35-8970-953d7c828cd0")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 8f538d63-86da-c149-3c84-1f1aace2f930
			Description : The network name for this computer	
*/
		public string NetworkName
		{	
			set {@Object[new Guid("8f538d63-86da-c149-3c84-1f1aace2f930")].Value = value;}
			get {
                    if(@Object[new Guid("8f538d63-86da-c149-3c84-1f1aace2f930")]==null || @Object[new Guid("8f538d63-86da-c149-3c84-1f1aace2f930")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("8f538d63-86da-c149-3c84-1f1aace2f930")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 55124dce-750d-bd54-4b92-d1fddf99adec
			Description : Notes	
*/
		public string Notes
		{	
			set {@Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value = value;}
			get {
                    if(@Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")]==null || @Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 11927069-6957-dfcf-a277-08a784221325
			Description : Object status	
*/
		public ManagementPackEnumeration ObjectStatus
		{	
			set {@Object[new Guid("11927069-6957-dfcf-a277-08a784221325")].Value = value;}
			get
			{
				if(@Object[new Guid("11927069-6957-dfcf-a277-08a784221325")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("11927069-6957-dfcf-a277-08a784221325")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Int32	
			Id 			: 68f597b6-aada-7baa-b544-fe67c737be32
			Description : Offset In Minutes From Greenwich Time	
*/
		public int OffsetInMinuteFromGreenwichTime
		{	
			set {@Object[new Guid("68f597b6-aada-7baa-b544-fe67c737be32")].Value = value;}
			get {
                    if(@Object[new Guid("68f597b6-aada-7baa-b544-fe67c737be32")]==null || @Object[new Guid("68f597b6-aada-7baa-b544-fe67c737be32")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("68f597b6-aada-7baa-b544-fe67c737be32")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: bfdf9a0d-3393-a720-f24a-17ea701eb77a
			Description : Organizational Unit	
*/
		public string OrganizationalUnit
		{	
			set {@Object[new Guid("bfdf9a0d-3393-a720-f24a-17ea701eb77a")].Value = value;}
			get {
                    if(@Object[new Guid("bfdf9a0d-3393-a720-f24a-17ea701eb77a")]==null || @Object[new Guid("bfdf9a0d-3393-a720-f24a-17ea701eb77a")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("bfdf9a0d-3393-a720-f24a-17ea701eb77a")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 5c324096-d928-76db-e9e7-e629dcc261b1
			Description : The principal name of this Computer.	
*/
		public string PrincipalName
		{	
			set {@Object[new Guid("5c324096-d928-76db-e9e7-e629dcc261b1")].Value = value;}
			get {
                    if(@Object[new Guid("5c324096-d928-76db-e9e7-e629dcc261b1")]==null || @Object[new Guid("5c324096-d928-76db-e9e7-e629dcc261b1")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("5c324096-d928-76db-e9e7-e629dcc261b1")].Value; 
                    
                }		
			
		}
#endregion
#region Relationships
		public void AddPhysicalComputer(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = Microsoft_Windows_ComputerClass.Relationships.Microsoft_SystemCenter_ConfigurationManager_DeployedComputerRunsWindowsComputer;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> PhysicalComputerProjection  
		{
			get{ return emop["DeployedComputer"];}
		}
				
         
        public IComposableProjection OperatingSystemProjection
		{
			get{ return emop["OperatingSystem"].FirstOrDefault(); }
		}    
            
		public string OperatingSystemName  
		{
			get{
                var projection = emop["OperatingSystem"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddOperatingSystem(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = Microsoft_Windows_ComputerClass.Relationships.Microsoft_Windows_ComputerHostsOperatingSystem;
					
			emop.Add(value, endPoint.Target);
		}
		
		public void AddAffectedByIncidents(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = Microsoft_Windows_ComputerClass.Relationships.System_WorkItemAboutConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> AffectedByIncidentsProjection  
		{
			get{ return emop["IsAboutConfigItems"];}
		}
				
#endregion
		}// end tp class
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: ServiceManager.ConfigurationManagement.Configuration
			public class Microsoft_Windows_PrinterView_ProjectionType  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public Microsoft_Windows_PrinterView_ProjectionType(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("4de37835-cd92-d23f-0ecf-1f8bc2eedaa7");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("6f584aa4-713d-5ed7-8f8d-75fd6cf0deb0");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static Microsoft_Windows_PrinterView_ProjectionType Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, Microsoft_AD_PrinterClass.GetManagementPackClass());	
					return new  Microsoft_Windows_PrinterView_ProjectionType(p);
				}
								
				public static Microsoft_Windows_PrinterView_ProjectionType Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.Printer']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("4de37835-cd92-d23f-0ecf-1f8bc2eedaa7"), property, id);
					return  new Microsoft_Windows_PrinterView_ProjectionType(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.String	
			Id 			: f7b94e15-e05c-62fe-2778-4d4bbd044caf
			Description : Asset Number	
*/
		public string AssetNumber
		{	
			set {@Object[new Guid("f7b94e15-e05c-62fe-2778-4d4bbd044caf")].Value = value;}
			get {
                    if(@Object[new Guid("f7b94e15-e05c-62fe-2778-4d4bbd044caf")]==null || @Object[new Guid("f7b94e15-e05c-62fe-2778-4d4bbd044caf")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("f7b94e15-e05c-62fe-2778-4d4bbd044caf")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: a6b7ea8d-9423-8529-cb21-87ac1a21fdcb
			Description : Asset status	
*/
		public ManagementPackEnumeration AssetStatus
		{	
			set {@Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")].Value = value;}
			get
			{
				if(@Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 3469e6c9-6234-64a5-5a7f-44f01a1f4296
			Description : Canonical Name	
*/
		public string CanonicalName
		{	
			set {@Object[new Guid("3469e6c9-6234-64a5-5a7f-44f01a1f4296")].Value = value;}
			get {
                    if(@Object[new Guid("3469e6c9-6234-64a5-5a7f-44f01a1f4296")]==null || @Object[new Guid("3469e6c9-6234-64a5-5a7f-44f01a1f4296")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("3469e6c9-6234-64a5-5a7f-44f01a1f4296")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d26a8552-8909-4f15-5333-6936c3c7fb1d
			Description : Description	
*/
		public string Description
		{	
			set {@Object[new Guid("d26a8552-8909-4f15-5333-6936c3c7fb1d")].Value = value;}
			get {
                    if(@Object[new Guid("d26a8552-8909-4f15-5333-6936c3c7fb1d")]==null || @Object[new Guid("d26a8552-8909-4f15-5333-6936c3c7fb1d")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d26a8552-8909-4f15-5333-6936c3c7fb1d")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 62feaa3e-a183-924f-3448-e5051349869f
			Description : Distinguished Name	
*/
		public string DistinguishedName
		{	
			set {@Object[new Guid("62feaa3e-a183-924f-3448-e5051349869f")].Value = value;}
			get {
                    if(@Object[new Guid("62feaa3e-a183-924f-3448-e5051349869f")]==null || @Object[new Guid("62feaa3e-a183-924f-3448-e5051349869f")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("62feaa3e-a183-924f-3448-e5051349869f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 6dbb6006-a37e-fea4-914c-bc4070be8133
			Description : Driver Name	
*/
		public string DriverName
		{	
			set {@Object[new Guid("6dbb6006-a37e-fea4-914c-bc4070be8133")].Value = value;}
			get {
                    if(@Object[new Guid("6dbb6006-a37e-fea4-914c-bc4070be8133")]==null || @Object[new Guid("6dbb6006-a37e-fea4-914c-bc4070be8133")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("6dbb6006-a37e-fea4-914c-bc4070be8133")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 3d979651-0304-f34c-98d7-a5295c365167
			Description : Driver Version	
*/
		public string DriverVersion
		{	
			set {@Object[new Guid("3d979651-0304-f34c-98d7-a5295c365167")].Value = value;}
			get {
                    if(@Object[new Guid("3d979651-0304-f34c-98d7-a5295c365167")]==null || @Object[new Guid("3d979651-0304-f34c-98d7-a5295c365167")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("3d979651-0304-f34c-98d7-a5295c365167")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 869bcaa8-9281-2ff1-353b-517d5045d59f
			Description : Full Name	
*/
		public string Fullname
		{	
			set {@Object[new Guid("869bcaa8-9281-2ff1-353b-517d5045d59f")].Value = value;}
			get {
                    if(@Object[new Guid("869bcaa8-9281-2ff1-353b-517d5045d59f")]==null || @Object[new Guid("869bcaa8-9281-2ff1-353b-517d5045d59f")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("869bcaa8-9281-2ff1-353b-517d5045d59f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: 0f6a2a1c-aa34-54e9-c054-34bf70de4ebd
			Description : Is Deleted	
*/
		public bool? IsDeleted
		{	
			set {@Object[new Guid("0f6a2a1c-aa34-54e9-c054-34bf70de4ebd")].Value = value;}
			get
			{
				if(@Object[new Guid("0f6a2a1c-aa34-54e9-c054-34bf70de4ebd")] != null)
				return  (bool?) @Object[new Guid("0f6a2a1c-aa34-54e9-c054-34bf70de4ebd")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 3274b2b3-8a62-552f-5c16-9c6e175f5aba
			Description : Keywords	
*/
		public string Keywords
		{	
			set {@Object[new Guid("3274b2b3-8a62-552f-5c16-9c6e175f5aba")].Value = value;}
			get {
                    if(@Object[new Guid("3274b2b3-8a62-552f-5c16-9c6e175f5aba")]==null || @Object[new Guid("3274b2b3-8a62-552f-5c16-9c6e175f5aba")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("3274b2b3-8a62-552f-5c16-9c6e175f5aba")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 93682513-cc0e-d312-488e-e88fc6d1122d
			Description : Location	
*/
		public string Location
		{	
			set {@Object[new Guid("93682513-cc0e-d312-488e-e88fc6d1122d")].Value = value;}
			get {
                    if(@Object[new Guid("93682513-cc0e-d312-488e-e88fc6d1122d")]==null || @Object[new Guid("93682513-cc0e-d312-488e-e88fc6d1122d")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("93682513-cc0e-d312-488e-e88fc6d1122d")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: e61c42ed-e5a8-10f9-7b05-6a1ea7d4f246
			Description : Managed By	
*/
		public string ManagedBy
		{	
			set {@Object[new Guid("e61c42ed-e5a8-10f9-7b05-6a1ea7d4f246")].Value = value;}
			get {
                    if(@Object[new Guid("e61c42ed-e5a8-10f9-7b05-6a1ea7d4f246")]==null || @Object[new Guid("e61c42ed-e5a8-10f9-7b05-6a1ea7d4f246")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("e61c42ed-e5a8-10f9-7b05-6a1ea7d4f246")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: 96d8a99a-7cbf-6823-e181-059fd3b1645f
			Description : Modify Time Stamp	
*/
		public DateTime? ModifyTimeStamp
		{	
			set {@Object[new Guid("96d8a99a-7cbf-6823-e181-059fd3b1645f")].Value = value;}
			get {
                    if(@Object[new Guid("96d8a99a-7cbf-6823-e181-059fd3b1645f")]==null || @Object[new Guid("96d8a99a-7cbf-6823-e181-059fd3b1645f")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("96d8a99a-7cbf-6823-e181-059fd3b1645f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 55124dce-750d-bd54-4b92-d1fddf99adec
			Description : Notes	
*/
		public string Notes
		{	
			set {@Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value = value;}
			get {
                    if(@Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")]==null || @Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 11927069-6957-dfcf-a277-08a784221325
			Description : Object status	
*/
		public ManagementPackEnumeration ObjectStatus
		{	
			set {@Object[new Guid("11927069-6957-dfcf-a277-08a784221325")].Value = value;}
			get
			{
				if(@Object[new Guid("11927069-6957-dfcf-a277-08a784221325")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("11927069-6957-dfcf-a277-08a784221325")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 1f9b21d2-75b2-281c-2d16-a60b97210d28
			Description : Physical Location Object	
*/
		public string PhysicalLocationObject
		{	
			set {@Object[new Guid("1f9b21d2-75b2-281c-2d16-a60b97210d28")].Value = value;}
			get {
                    if(@Object[new Guid("1f9b21d2-75b2-281c-2d16-a60b97210d28")]==null || @Object[new Guid("1f9b21d2-75b2-281c-2d16-a60b97210d28")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("1f9b21d2-75b2-281c-2d16-a60b97210d28")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: df3083bd-3970-b4a6-0a96-8f0afd6f1353
			Description : Port Name	
*/
		public string PortName
		{	
			set {@Object[new Guid("df3083bd-3970-b4a6-0a96-8f0afd6f1353")].Value = value;}
			get {
                    if(@Object[new Guid("df3083bd-3970-b4a6-0a96-8f0afd6f1353")]==null || @Object[new Guid("df3083bd-3970-b4a6-0a96-8f0afd6f1353")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("df3083bd-3970-b4a6-0a96-8f0afd6f1353")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: e07395c9-62ae-97ea-311e-b5c843d7adb0
			Description : Print Bin Names	
*/
		public string PrintBinNames
		{	
			set {@Object[new Guid("e07395c9-62ae-97ea-311e-b5c843d7adb0")].Value = value;}
			get {
                    if(@Object[new Guid("e07395c9-62ae-97ea-311e-b5c843d7adb0")]==null || @Object[new Guid("e07395c9-62ae-97ea-311e-b5c843d7adb0")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("e07395c9-62ae-97ea-311e-b5c843d7adb0")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 25378519-616a-f21c-7265-3549117c1dd9
			Description : Print Collate	
*/
		public string PrintCollate
		{	
			set {@Object[new Guid("25378519-616a-f21c-7265-3549117c1dd9")].Value = value;}
			get {
                    if(@Object[new Guid("25378519-616a-f21c-7265-3549117c1dd9")]==null || @Object[new Guid("25378519-616a-f21c-7265-3549117c1dd9")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("25378519-616a-f21c-7265-3549117c1dd9")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: c132aaa3-6203-db0d-b0bb-02332198fad7
			Description : Print Color	
*/
		public string PrintColor
		{	
			set {@Object[new Guid("c132aaa3-6203-db0d-b0bb-02332198fad7")].Value = value;}
			get {
                    if(@Object[new Guid("c132aaa3-6203-db0d-b0bb-02332198fad7")]==null || @Object[new Guid("c132aaa3-6203-db0d-b0bb-02332198fad7")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("c132aaa3-6203-db0d-b0bb-02332198fad7")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d60a266d-4b9d-c625-4850-e99608ad3e04
			Description : Print Duplex Supported	
*/
		public string PrintDuplexSupported
		{	
			set {@Object[new Guid("d60a266d-4b9d-c625-4850-e99608ad3e04")].Value = value;}
			get {
                    if(@Object[new Guid("d60a266d-4b9d-c625-4850-e99608ad3e04")]==null || @Object[new Guid("d60a266d-4b9d-c625-4850-e99608ad3e04")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d60a266d-4b9d-c625-4850-e99608ad3e04")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 8f48898e-12f1-8c29-a70d-fe96c38fb712
			Description : Printer Name	
*/
		public string PrinterName
		{	
			set {@Object[new Guid("8f48898e-12f1-8c29-a70d-fe96c38fb712")].Value = value;}
			get {
                    if(@Object[new Guid("8f48898e-12f1-8c29-a70d-fe96c38fb712")]==null || @Object[new Guid("8f48898e-12f1-8c29-a70d-fe96c38fb712")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("8f48898e-12f1-8c29-a70d-fe96c38fb712")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: af1756b9-6c96-0b86-b513-eaabb527b36d
			Description : Print Keep Printed Jobs	
*/
		public string PrintKeepPrintedJobs
		{	
			set {@Object[new Guid("af1756b9-6c96-0b86-b513-eaabb527b36d")].Value = value;}
			get {
                    if(@Object[new Guid("af1756b9-6c96-0b86-b513-eaabb527b36d")]==null || @Object[new Guid("af1756b9-6c96-0b86-b513-eaabb527b36d")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("af1756b9-6c96-0b86-b513-eaabb527b36d")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 129ac218-a27a-0de5-4737-1599819f3153
			Description : Print MAC Address	
*/
		public string PrintMACAddress
		{	
			set {@Object[new Guid("129ac218-a27a-0de5-4737-1599819f3153")].Value = value;}
			get {
                    if(@Object[new Guid("129ac218-a27a-0de5-4737-1599819f3153")]==null || @Object[new Guid("129ac218-a27a-0de5-4737-1599819f3153")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("129ac218-a27a-0de5-4737-1599819f3153")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Int32	
			Id 			: 3054e38f-c4a9-2d02-224e-352c931e16bb
			Description : Print Max Resolution Supported	
*/
		public int PrintMaxResolutionSupported
		{	
			set {@Object[new Guid("3054e38f-c4a9-2d02-224e-352c931e16bb")].Value = value;}
			get {
                    if(@Object[new Guid("3054e38f-c4a9-2d02-224e-352c931e16bb")]==null || @Object[new Guid("3054e38f-c4a9-2d02-224e-352c931e16bb")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("3054e38f-c4a9-2d02-224e-352c931e16bb")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Int32	
			Id 			: 14303a5e-91ab-f233-2390-e77fb84aea7b
			Description : Print Max XExtent	
*/
		public int PrintMaxXExtent
		{	
			set {@Object[new Guid("14303a5e-91ab-f233-2390-e77fb84aea7b")].Value = value;}
			get {
                    if(@Object[new Guid("14303a5e-91ab-f233-2390-e77fb84aea7b")]==null || @Object[new Guid("14303a5e-91ab-f233-2390-e77fb84aea7b")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("14303a5e-91ab-f233-2390-e77fb84aea7b")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: e87227c1-7b56-0260-c700-68b741df6ead
			Description : Print Media Ready	
*/
		public string PrintMediaReady
		{	
			set {@Object[new Guid("e87227c1-7b56-0260-c700-68b741df6ead")].Value = value;}
			get {
                    if(@Object[new Guid("e87227c1-7b56-0260-c700-68b741df6ead")]==null || @Object[new Guid("e87227c1-7b56-0260-c700-68b741df6ead")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("e87227c1-7b56-0260-c700-68b741df6ead")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: f1d618e4-d526-8602-1361-af36101bd356
			Description : Print Media Supported	
*/
		public string PrintMediaSupported
		{	
			set {@Object[new Guid("f1d618e4-d526-8602-1361-af36101bd356")].Value = value;}
			get {
                    if(@Object[new Guid("f1d618e4-d526-8602-1361-af36101bd356")]==null || @Object[new Guid("f1d618e4-d526-8602-1361-af36101bd356")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("f1d618e4-d526-8602-1361-af36101bd356")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 08154ac1-3009-1423-2c58-08d164e617f0
			Description : Print Memory	
*/
		public string PrintMemory
		{	
			set {@Object[new Guid("08154ac1-3009-1423-2c58-08d164e617f0")].Value = value;}
			get {
                    if(@Object[new Guid("08154ac1-3009-1423-2c58-08d164e617f0")]==null || @Object[new Guid("08154ac1-3009-1423-2c58-08d164e617f0")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("08154ac1-3009-1423-2c58-08d164e617f0")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 7b2a8862-582a-499d-bf99-041e62abd2a2
			Description : Print Network Address	
*/
		public string PrintNetworkAddress
		{	
			set {@Object[new Guid("7b2a8862-582a-499d-bf99-041e62abd2a2")].Value = value;}
			get {
                    if(@Object[new Guid("7b2a8862-582a-499d-bf99-041e62abd2a2")]==null || @Object[new Guid("7b2a8862-582a-499d-bf99-041e62abd2a2")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("7b2a8862-582a-499d-bf99-041e62abd2a2")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: ba10fb83-9c59-735f-d09a-6537b103c93e
			Description : Print Notify	
*/
		public string PrintNotify
		{	
			set {@Object[new Guid("ba10fb83-9c59-735f-d09a-6537b103c93e")].Value = value;}
			get {
                    if(@Object[new Guid("ba10fb83-9c59-735f-d09a-6537b103c93e")]==null || @Object[new Guid("ba10fb83-9c59-735f-d09a-6537b103c93e")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("ba10fb83-9c59-735f-d09a-6537b103c93e")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: efec5a22-146f-09bb-1b1b-99364a7bdd1f
			Description : Print Owner	
*/
		public string PrintOwner
		{	
			set {@Object[new Guid("efec5a22-146f-09bb-1b1b-99364a7bdd1f")].Value = value;}
			get {
                    if(@Object[new Guid("efec5a22-146f-09bb-1b1b-99364a7bdd1f")]==null || @Object[new Guid("efec5a22-146f-09bb-1b1b-99364a7bdd1f")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("efec5a22-146f-09bb-1b1b-99364a7bdd1f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Int32	
			Id 			: 49ff3e93-c21d-4360-c2a7-ec66ec1eafb9
			Description : Print Pages Per Minute	
*/
		public int PrintPagesPerMinute
		{	
			set {@Object[new Guid("49ff3e93-c21d-4360-c2a7-ec66ec1eafb9")].Value = value;}
			get {
                    if(@Object[new Guid("49ff3e93-c21d-4360-c2a7-ec66ec1eafb9")]==null || @Object[new Guid("49ff3e93-c21d-4360-c2a7-ec66ec1eafb9")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("49ff3e93-c21d-4360-c2a7-ec66ec1eafb9")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Int32	
			Id 			: e263f875-7990-b709-cdf0-ba77a1c26219
			Description : Print Rate	
*/
		public int PrintRate
		{	
			set {@Object[new Guid("e263f875-7990-b709-cdf0-ba77a1c26219")].Value = value;}
			get {
                    if(@Object[new Guid("e263f875-7990-b709-cdf0-ba77a1c26219")]==null || @Object[new Guid("e263f875-7990-b709-cdf0-ba77a1c26219")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("e263f875-7990-b709-cdf0-ba77a1c26219")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: b2804c7e-2dc5-b733-19af-63390bc75ac9
			Description : Print Rate Unit	
*/
		public string PrintRateUnit
		{	
			set {@Object[new Guid("b2804c7e-2dc5-b733-19af-63390bc75ac9")].Value = value;}
			get {
                    if(@Object[new Guid("b2804c7e-2dc5-b733-19af-63390bc75ac9")]==null || @Object[new Guid("b2804c7e-2dc5-b733-19af-63390bc75ac9")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("b2804c7e-2dc5-b733-19af-63390bc75ac9")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: dcd4aeef-7386-9b70-f9a8-24a48b8fb020
			Description : Print Share Name	
*/
		public string PrintShareName
		{	
			set {@Object[new Guid("dcd4aeef-7386-9b70-f9a8-24a48b8fb020")].Value = value;}
			get {
                    if(@Object[new Guid("dcd4aeef-7386-9b70-f9a8-24a48b8fb020")]==null || @Object[new Guid("dcd4aeef-7386-9b70-f9a8-24a48b8fb020")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("dcd4aeef-7386-9b70-f9a8-24a48b8fb020")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 21a6298d-53da-fa5b-6919-35d961f58b84
			Description : Print Stapling Supported	
*/
		public string PrintStaplingSupported
		{	
			set {@Object[new Guid("21a6298d-53da-fa5b-6919-35d961f58b84")].Value = value;}
			get {
                    if(@Object[new Guid("21a6298d-53da-fa5b-6919-35d961f58b84")]==null || @Object[new Guid("21a6298d-53da-fa5b-6919-35d961f58b84")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("21a6298d-53da-fa5b-6919-35d961f58b84")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: a312fcfe-9428-8ff5-1e9d-c6d298b85666
			Description : Server Name	
*/
		public string ServerName
		{	
			set {@Object[new Guid("a312fcfe-9428-8ff5-1e9d-c6d298b85666")].Value = value;}
			get {
                    if(@Object[new Guid("a312fcfe-9428-8ff5-1e9d-c6d298b85666")]==null || @Object[new Guid("a312fcfe-9428-8ff5-1e9d-c6d298b85666")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("a312fcfe-9428-8ff5-1e9d-c6d298b85666")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 41779a96-123c-7e8d-bb89-8de98fea141e
			Description : Short Server Name	
*/
		public string ShortServerName
		{	
			set {@Object[new Guid("41779a96-123c-7e8d-bb89-8de98fea141e")].Value = value;}
			get {
                    if(@Object[new Guid("41779a96-123c-7e8d-bb89-8de98fea141e")]==null || @Object[new Guid("41779a96-123c-7e8d-bb89-8de98fea141e")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("41779a96-123c-7e8d-bb89-8de98fea141e")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: ff05ca83-bfd7-2de4-586d-08b8fcbeb977
			Description : UNC Name	
*/
		public string UNCName
		{	
			set {@Object[new Guid("ff05ca83-bfd7-2de4-586d-08b8fcbeb977")].Value = value;}
			get {
                    if(@Object[new Guid("ff05ca83-bfd7-2de4-586d-08b8fcbeb977")]==null || @Object[new Guid("ff05ca83-bfd7-2de4-586d-08b8fcbeb977")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("ff05ca83-bfd7-2de4-586d-08b8fcbeb977")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 351444b0-7efb-9772-8450-04b583fb07d5
			Description : URL	
*/
		public string Url
		{	
			set {@Object[new Guid("351444b0-7efb-9772-8450-04b583fb07d5")].Value = value;}
			get {
                    if(@Object[new Guid("351444b0-7efb-9772-8450-04b583fb07d5")]==null || @Object[new Guid("351444b0-7efb-9772-8450-04b583fb07d5")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("351444b0-7efb-9772-8450-04b583fb07d5")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: faf56106-adc7-9fd4-522d-1ccebeb3a86e
			Description : Version Number	
*/
		public string VersionNumber
		{	
			set {@Object[new Guid("faf56106-adc7-9fd4-522d-1ccebeb3a86e")].Value = value;}
			get {
                    if(@Object[new Guid("faf56106-adc7-9fd4-522d-1ccebeb3a86e")]==null || @Object[new Guid("faf56106-adc7-9fd4-522d-1ccebeb3a86e")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("faf56106-adc7-9fd4-522d-1ccebeb3a86e")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: 21a242fe-d395-b68e-fe00-13c86f86a90a
			Description : When Changed	
*/
		public DateTime? WhenChanged
		{	
			set {@Object[new Guid("21a242fe-d395-b68e-fe00-13c86f86a90a")].Value = value;}
			get {
                    if(@Object[new Guid("21a242fe-d395-b68e-fe00-13c86f86a90a")]==null || @Object[new Guid("21a242fe-d395-b68e-fe00-13c86f86a90a")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("21a242fe-d395-b68e-fe00-13c86f86a90a")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 95552415-778d-1865-f287-91601a81ea2c
			Description : Web Page	
*/
		public string WWWHomePage
		{	
			set {@Object[new Guid("95552415-778d-1865-f287-91601a81ea2c")].Value = value;}
			get {
                    if(@Object[new Guid("95552415-778d-1865-f287-91601a81ea2c")]==null || @Object[new Guid("95552415-778d-1865-f287-91601a81ea2c")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("95552415-778d-1865-f287-91601a81ea2c")].Value; 
                    
                }		
			
		}
#endregion
#region Relationships
		public void AddRelatedConfigItem(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = Microsoft_AD_PrinterClass.Relationships.System_ConfigItemRelatesToConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> RelatedConfigItemProjection  
		{
			get{ return emop["TargetConfigItem"];}
		}
				
#endregion
		}// end tp class
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: ServiceManager.ConfigurationManagement.Configuration
			public class Microsoft_Windows_SoftwareUpdateView_ProjectionType  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public Microsoft_Windows_SoftwareUpdateView_ProjectionType(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("5405cfe1-6fd5-90d3-879b-25729c6d4af2");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("6f584aa4-713d-5ed7-8f8d-75fd6cf0deb0");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static Microsoft_Windows_SoftwareUpdateView_ProjectionType Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, System_SoftwareUpdateClass.GetManagementPackClass());	
					return new  Microsoft_Windows_SoftwareUpdateView_ProjectionType(p);
				}
								
				public static Microsoft_Windows_SoftwareUpdateView_ProjectionType Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.LogicalEntity']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("5405cfe1-6fd5-90d3-879b-25729c6d4af2"), property, id);
					return  new Microsoft_Windows_SoftwareUpdateView_ProjectionType(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.Enum	
			Id 			: a6b7ea8d-9423-8529-cb21-87ac1a21fdcb
			Description : Asset status	
*/
		public ManagementPackEnumeration AssetStatus
		{	
			set {@Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")].Value = value;}
			get
			{
				if(@Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 55124dce-750d-bd54-4b92-d1fddf99adec
			Description : Notes	
*/
		public string Notes
		{	
			set {@Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value = value;}
			get {
                    if(@Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")]==null || @Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 11927069-6957-dfcf-a277-08a784221325
			Description : Object status	
*/
		public ManagementPackEnumeration ObjectStatus
		{	
			set {@Object[new Guid("11927069-6957-dfcf-a277-08a784221325")].Value = value;}
			get
			{
				if(@Object[new Guid("11927069-6957-dfcf-a277-08a784221325")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("11927069-6957-dfcf-a277-08a784221325")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: f9af25bc-d8e4-02ca-c607-ba9d5ad79850
			Description : Title	
*/
		public string Title
		{	
			set {@Object[new Guid("f9af25bc-d8e4-02ca-c607-ba9d5ad79850")].Value = value;}
			get {
                    if(@Object[new Guid("f9af25bc-d8e4-02ca-c607-ba9d5ad79850")]==null || @Object[new Guid("f9af25bc-d8e4-02ca-c607-ba9d5ad79850")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("f9af25bc-d8e4-02ca-c607-ba9d5ad79850")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 2fa20ad3-c8d8-f6d6-9224-a77cd07bf6f3
			Description : Vendor	
*/
		public string Vendor
		{	
			set {@Object[new Guid("2fa20ad3-c8d8-f6d6-9224-a77cd07bf6f3")].Value = value;}
			get {
                    if(@Object[new Guid("2fa20ad3-c8d8-f6d6-9224-a77cd07bf6f3")]==null || @Object[new Guid("2fa20ad3-c8d8-f6d6-9224-a77cd07bf6f3")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("2fa20ad3-c8d8-f6d6-9224-a77cd07bf6f3")].Value; 
                    
                }		
			
		}
#endregion
#region Relationships
		public void AddAffectedByIncidents(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_SoftwareUpdateClass.Relationships.System_WorkItemAboutConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> AffectedByIncidentsProjection  
		{
			get{ return emop["IsAboutConfigItems"];}
		}
				
		public void AddAffectedByChanges(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_SoftwareUpdateClass.Relationships.System_WorkItemAboutConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> AffectedByChangesProjection  
		{
			get{ return emop["IsAboutConfigItems"];}
		}
				
#endregion
		}// end tp class
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: ServiceManager.ConfigurationManagement.Configuration
			public class Microsoft_Windows_AffectedByChangeSoftwareUpdateView_ProjectionType  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public Microsoft_Windows_AffectedByChangeSoftwareUpdateView_ProjectionType(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("28ffa68d-ce3c-7166-d091-602f224f3726");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("6f584aa4-713d-5ed7-8f8d-75fd6cf0deb0");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static Microsoft_Windows_AffectedByChangeSoftwareUpdateView_ProjectionType Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, System_SoftwareUpdateClass.GetManagementPackClass());	
					return new  Microsoft_Windows_AffectedByChangeSoftwareUpdateView_ProjectionType(p);
				}
								
				public static Microsoft_Windows_AffectedByChangeSoftwareUpdateView_ProjectionType Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.LogicalEntity']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("28ffa68d-ce3c-7166-d091-602f224f3726"), property, id);
					return  new Microsoft_Windows_AffectedByChangeSoftwareUpdateView_ProjectionType(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.Enum	
			Id 			: a6b7ea8d-9423-8529-cb21-87ac1a21fdcb
			Description : Asset status	
*/
		public ManagementPackEnumeration AssetStatus
		{	
			set {@Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")].Value = value;}
			get
			{
				if(@Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 55124dce-750d-bd54-4b92-d1fddf99adec
			Description : Notes	
*/
		public string Notes
		{	
			set {@Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value = value;}
			get {
                    if(@Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")]==null || @Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 11927069-6957-dfcf-a277-08a784221325
			Description : Object status	
*/
		public ManagementPackEnumeration ObjectStatus
		{	
			set {@Object[new Guid("11927069-6957-dfcf-a277-08a784221325")].Value = value;}
			get
			{
				if(@Object[new Guid("11927069-6957-dfcf-a277-08a784221325")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("11927069-6957-dfcf-a277-08a784221325")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: f9af25bc-d8e4-02ca-c607-ba9d5ad79850
			Description : Title	
*/
		public string Title
		{	
			set {@Object[new Guid("f9af25bc-d8e4-02ca-c607-ba9d5ad79850")].Value = value;}
			get {
                    if(@Object[new Guid("f9af25bc-d8e4-02ca-c607-ba9d5ad79850")]==null || @Object[new Guid("f9af25bc-d8e4-02ca-c607-ba9d5ad79850")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("f9af25bc-d8e4-02ca-c607-ba9d5ad79850")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 2fa20ad3-c8d8-f6d6-9224-a77cd07bf6f3
			Description : Vendor	
*/
		public string Vendor
		{	
			set {@Object[new Guid("2fa20ad3-c8d8-f6d6-9224-a77cd07bf6f3")].Value = value;}
			get {
                    if(@Object[new Guid("2fa20ad3-c8d8-f6d6-9224-a77cd07bf6f3")]==null || @Object[new Guid("2fa20ad3-c8d8-f6d6-9224-a77cd07bf6f3")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("2fa20ad3-c8d8-f6d6-9224-a77cd07bf6f3")].Value; 
                    
                }		
			
		}
#endregion
#region Relationships
		public void AddAffectedByChanges(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_SoftwareUpdateClass.Relationships.System_WorkItemAboutConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> AffectedByChangesProjection  
		{
			get{ return emop["IsAboutConfigItems"];}
		}
				
#endregion
		}// end tp class
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: ServiceManager.ConfigurationManagement.Configuration
			public class Microsoft_Windows_AffectedByChangeComputerView_ProjectionType  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public Microsoft_Windows_AffectedByChangeComputerView_ProjectionType(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("4e5070ae-7818-b8c7-7644-71e86f5276be");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("6f584aa4-713d-5ed7-8f8d-75fd6cf0deb0");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static Microsoft_Windows_AffectedByChangeComputerView_ProjectionType Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, Microsoft_Windows_ComputerClass.GetManagementPackClass());	
					return new  Microsoft_Windows_AffectedByChangeComputerView_ProjectionType(p);
				}
								
				public static Microsoft_Windows_AffectedByChangeComputerView_ProjectionType Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.Computer']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("4e5070ae-7818-b8c7-7644-71e86f5276be"), property, id);
					return  new Microsoft_Windows_AffectedByChangeComputerView_ProjectionType(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.String	
			Id 			: 488183e9-d2bb-2dd8-b872-18a20a1c9fa6
			Description : The AD Security Identifier for this computer	
*/
		public string ActiveDirectoryObjectSid
		{	
			set {@Object[new Guid("488183e9-d2bb-2dd8-b872-18a20a1c9fa6")].Value = value;}
			get {
                    if(@Object[new Guid("488183e9-d2bb-2dd8-b872-18a20a1c9fa6")]==null || @Object[new Guid("488183e9-d2bb-2dd8-b872-18a20a1c9fa6")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("488183e9-d2bb-2dd8-b872-18a20a1c9fa6")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 4a1e1c69-c659-af91-e7a8-d886008032f3
			Description : Active Directory Site	
*/
		public string ActiveDirectorySite
		{	
			set {@Object[new Guid("4a1e1c69-c659-af91-e7a8-d886008032f3")].Value = value;}
			get {
                    if(@Object[new Guid("4a1e1c69-c659-af91-e7a8-d886008032f3")]==null || @Object[new Guid("4a1e1c69-c659-af91-e7a8-d886008032f3")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("4a1e1c69-c659-af91-e7a8-d886008032f3")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: a6b7ea8d-9423-8529-cb21-87ac1a21fdcb
			Description : Asset status	
*/
		public ManagementPackEnumeration AssetStatus
		{	
			set {@Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")].Value = value;}
			get
			{
				if(@Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d3b003ee-7bb7-6456-2d45-c2e764df37a6
			Description : The fully qualified domain name of this computer.	
*/
		public string DNSName
		{	
			set {@Object[new Guid("d3b003ee-7bb7-6456-2d45-c2e764df37a6")].Value = value;}
			get {
                    if(@Object[new Guid("d3b003ee-7bb7-6456-2d45-c2e764df37a6")]==null || @Object[new Guid("d3b003ee-7bb7-6456-2d45-c2e764df37a6")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d3b003ee-7bb7-6456-2d45-c2e764df37a6")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 9f2cafc8-7a18-1c76-b709-d51b01d3b3d3
			Description : DNS Domain Name	
*/
		public string DomainDnsName
		{	
			set {@Object[new Guid("9f2cafc8-7a18-1c76-b709-d51b01d3b3d3")].Value = value;}
			get {
                    if(@Object[new Guid("9f2cafc8-7a18-1c76-b709-d51b01d3b3d3")]==null || @Object[new Guid("9f2cafc8-7a18-1c76-b709-d51b01d3b3d3")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("9f2cafc8-7a18-1c76-b709-d51b01d3b3d3")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 1704a09d-8063-021a-9b80-2c47622ecf0f
			Description : DNS Forest Name	
*/
		public string ForestDnsName
		{	
			set {@Object[new Guid("1704a09d-8063-021a-9b80-2c47622ecf0f")].Value = value;}
			get {
                    if(@Object[new Guid("1704a09d-8063-021a-9b80-2c47622ecf0f")]==null || @Object[new Guid("1704a09d-8063-021a-9b80-2c47622ecf0f")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("1704a09d-8063-021a-9b80-2c47622ecf0f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: f97e7c31-f713-e2a6-0450-239a62363651
			Description : The IP address for this computer.	
*/
		public string IPAddress
		{	
			set {@Object[new Guid("f97e7c31-f713-e2a6-0450-239a62363651")].Value = value;}
			get {
                    if(@Object[new Guid("f97e7c31-f713-e2a6-0450-239a62363651")]==null || @Object[new Guid("f97e7c31-f713-e2a6-0450-239a62363651")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("f97e7c31-f713-e2a6-0450-239a62363651")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: 6832a546-b39d-aff8-94e1-660bbd336687
			Description : Virtual Machine	
*/
		public bool? IsVirtualMachine
		{	
			set {@Object[new Guid("6832a546-b39d-aff8-94e1-660bbd336687")].Value = value;}
			get
			{
				if(@Object[new Guid("6832a546-b39d-aff8-94e1-660bbd336687")] != null)
				return  (bool?) @Object[new Guid("6832a546-b39d-aff8-94e1-660bbd336687")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.DateTime	
			Id 			: 6223ef72-50de-b1fb-d666-397cefd264ea
			Description : Last Inventory Date	
*/
		public DateTime? LastInventoryDate
		{	
			set {@Object[new Guid("6223ef72-50de-b1fb-d666-397cefd264ea")].Value = value;}
			get {
                    if(@Object[new Guid("6223ef72-50de-b1fb-d666-397cefd264ea")]==null || @Object[new Guid("6223ef72-50de-b1fb-d666-397cefd264ea")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("6223ef72-50de-b1fb-d666-397cefd264ea")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Int32	
			Id 			: 02563965-6649-f495-aeb7-bd8a6eab33a7
			Description : Logical Processors	
*/
		public int LogicalProcessors
		{	
			set {@Object[new Guid("02563965-6649-f495-aeb7-bd8a6eab33a7")].Value = value;}
			get {
                    if(@Object[new Guid("02563965-6649-f495-aeb7-bd8a6eab33a7")]==null || @Object[new Guid("02563965-6649-f495-aeb7-bd8a6eab33a7")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("02563965-6649-f495-aeb7-bd8a6eab33a7")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 879a4dee-444f-186b-cc6f-2e9cb89d87c3
			Description : The NetBIOS name for this computer.	
*/
		public string NetbiosComputerName
		{	
			set {@Object[new Guid("879a4dee-444f-186b-cc6f-2e9cb89d87c3")].Value = value;}
			get {
                    if(@Object[new Guid("879a4dee-444f-186b-cc6f-2e9cb89d87c3")]==null || @Object[new Guid("879a4dee-444f-186b-cc6f-2e9cb89d87c3")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("879a4dee-444f-186b-cc6f-2e9cb89d87c3")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 756493d6-f2a2-4f35-8970-953d7c828cd0
			Description : The NetBIOS domain name for this computer.	
*/
		public string NetbiosDomainName
		{	
			set {@Object[new Guid("756493d6-f2a2-4f35-8970-953d7c828cd0")].Value = value;}
			get {
                    if(@Object[new Guid("756493d6-f2a2-4f35-8970-953d7c828cd0")]==null || @Object[new Guid("756493d6-f2a2-4f35-8970-953d7c828cd0")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("756493d6-f2a2-4f35-8970-953d7c828cd0")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 8f538d63-86da-c149-3c84-1f1aace2f930
			Description : The network name for this computer	
*/
		public string NetworkName
		{	
			set {@Object[new Guid("8f538d63-86da-c149-3c84-1f1aace2f930")].Value = value;}
			get {
                    if(@Object[new Guid("8f538d63-86da-c149-3c84-1f1aace2f930")]==null || @Object[new Guid("8f538d63-86da-c149-3c84-1f1aace2f930")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("8f538d63-86da-c149-3c84-1f1aace2f930")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 55124dce-750d-bd54-4b92-d1fddf99adec
			Description : Notes	
*/
		public string Notes
		{	
			set {@Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value = value;}
			get {
                    if(@Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")]==null || @Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 11927069-6957-dfcf-a277-08a784221325
			Description : Object status	
*/
		public ManagementPackEnumeration ObjectStatus
		{	
			set {@Object[new Guid("11927069-6957-dfcf-a277-08a784221325")].Value = value;}
			get
			{
				if(@Object[new Guid("11927069-6957-dfcf-a277-08a784221325")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("11927069-6957-dfcf-a277-08a784221325")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Int32	
			Id 			: 68f597b6-aada-7baa-b544-fe67c737be32
			Description : Offset In Minutes From Greenwich Time	
*/
		public int OffsetInMinuteFromGreenwichTime
		{	
			set {@Object[new Guid("68f597b6-aada-7baa-b544-fe67c737be32")].Value = value;}
			get {
                    if(@Object[new Guid("68f597b6-aada-7baa-b544-fe67c737be32")]==null || @Object[new Guid("68f597b6-aada-7baa-b544-fe67c737be32")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("68f597b6-aada-7baa-b544-fe67c737be32")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: bfdf9a0d-3393-a720-f24a-17ea701eb77a
			Description : Organizational Unit	
*/
		public string OrganizationalUnit
		{	
			set {@Object[new Guid("bfdf9a0d-3393-a720-f24a-17ea701eb77a")].Value = value;}
			get {
                    if(@Object[new Guid("bfdf9a0d-3393-a720-f24a-17ea701eb77a")]==null || @Object[new Guid("bfdf9a0d-3393-a720-f24a-17ea701eb77a")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("bfdf9a0d-3393-a720-f24a-17ea701eb77a")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 5c324096-d928-76db-e9e7-e629dcc261b1
			Description : The principal name of this Computer.	
*/
		public string PrincipalName
		{	
			set {@Object[new Guid("5c324096-d928-76db-e9e7-e629dcc261b1")].Value = value;}
			get {
                    if(@Object[new Guid("5c324096-d928-76db-e9e7-e629dcc261b1")]==null || @Object[new Guid("5c324096-d928-76db-e9e7-e629dcc261b1")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("5c324096-d928-76db-e9e7-e629dcc261b1")].Value; 
                    
                }		
			
		}
#endregion
#region Relationships
		public void AddPhysicalComputer(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = Microsoft_Windows_ComputerClass.Relationships.Microsoft_SystemCenter_ConfigurationManager_DeployedComputerRunsWindowsComputer;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> PhysicalComputerProjection  
		{
			get{ return emop["DeployedComputer"];}
		}
				
         
        public IComposableProjection OperatingSystemProjection
		{
			get{ return emop["OperatingSystem"].FirstOrDefault(); }
		}    
            
		public string OperatingSystemName  
		{
			get{
                var projection = emop["OperatingSystem"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddOperatingSystem(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = Microsoft_Windows_ComputerClass.Relationships.Microsoft_Windows_ComputerHostsOperatingSystem;
					
			emop.Add(value, endPoint.Target);
		}
		
		public void AddAffectedByChanges(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = Microsoft_Windows_ComputerClass.Relationships.System_WorkItemAboutConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> AffectedByChangesProjection  
		{
			get{ return emop["IsAboutConfigItems"];}
		}
				
#endregion
		}// end tp class
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: ServiceManager.ConfigurationManagement.Configuration
			public class Microsoft_Windows_SoftwareView_ProjectionType  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public Microsoft_Windows_SoftwareView_ProjectionType(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("5601a4ea-1062-b00d-956b-898db46fcd1c");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("6f584aa4-713d-5ed7-8f8d-75fd6cf0deb0");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static Microsoft_Windows_SoftwareView_ProjectionType Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, System_SoftwareItemClass.GetManagementPackClass());	
					return new  Microsoft_Windows_SoftwareView_ProjectionType(p);
				}
								
				public static Microsoft_Windows_SoftwareView_ProjectionType Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.LogicalEntity']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("5601a4ea-1062-b00d-956b-898db46fcd1c"), property, id);
					return  new Microsoft_Windows_SoftwareView_ProjectionType(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.Enum	
			Id 			: a6b7ea8d-9423-8529-cb21-87ac1a21fdcb
			Description : Asset status	
*/
		public ManagementPackEnumeration AssetStatus
		{	
			set {@Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")].Value = value;}
			get
			{
				if(@Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: 95b838a1-d55b-bd54-09ed-c9a9fa816ac0
			Description : Is Virtual Application	
*/
		public bool? IsVirtualApplication
		{	
			set {@Object[new Guid("95b838a1-d55b-bd54-09ed-c9a9fa816ac0")].Value = value;}
			get
			{
				if(@Object[new Guid("95b838a1-d55b-bd54-09ed-c9a9fa816ac0")] != null)
				return  (bool?) @Object[new Guid("95b838a1-d55b-bd54-09ed-c9a9fa816ac0")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Int32	
			Id 			: f2459797-6d6e-1009-3f9d-9292787c1a75
			Description : Locale ID	
*/
		public int LocaleID
		{	
			set {@Object[new Guid("f2459797-6d6e-1009-3f9d-9292787c1a75")].Value = value;}
			get {
                    if(@Object[new Guid("f2459797-6d6e-1009-3f9d-9292787c1a75")]==null || @Object[new Guid("f2459797-6d6e-1009-3f9d-9292787c1a75")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("f2459797-6d6e-1009-3f9d-9292787c1a75")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 9cb5bc6e-f8ea-8e90-4c2b-4f6e95bb21a8
			Description : Major Version	
*/
		public string MajorVersion
		{	
			set {@Object[new Guid("9cb5bc6e-f8ea-8e90-4c2b-4f6e95bb21a8")].Value = value;}
			get {
                    if(@Object[new Guid("9cb5bc6e-f8ea-8e90-4c2b-4f6e95bb21a8")]==null || @Object[new Guid("9cb5bc6e-f8ea-8e90-4c2b-4f6e95bb21a8")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("9cb5bc6e-f8ea-8e90-4c2b-4f6e95bb21a8")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 047dd640-8a7d-32c3-426a-16e83e310178
			Description : Minor Version	
*/
		public string MinorVersion
		{	
			set {@Object[new Guid("047dd640-8a7d-32c3-426a-16e83e310178")].Value = value;}
			get {
                    if(@Object[new Guid("047dd640-8a7d-32c3-426a-16e83e310178")]==null || @Object[new Guid("047dd640-8a7d-32c3-426a-16e83e310178")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("047dd640-8a7d-32c3-426a-16e83e310178")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 55124dce-750d-bd54-4b92-d1fddf99adec
			Description : Notes	
*/
		public string Notes
		{	
			set {@Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value = value;}
			get {
                    if(@Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")]==null || @Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 11927069-6957-dfcf-a277-08a784221325
			Description : Object status	
*/
		public ManagementPackEnumeration ObjectStatus
		{	
			set {@Object[new Guid("11927069-6957-dfcf-a277-08a784221325")].Value = value;}
			get
			{
				if(@Object[new Guid("11927069-6957-dfcf-a277-08a784221325")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("11927069-6957-dfcf-a277-08a784221325")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 816f72b9-66bc-479d-a53d-03ca80424bcb
			Description : Product Name	
*/
		public string ProductName
		{	
			set {@Object[new Guid("816f72b9-66bc-479d-a53d-03ca80424bcb")].Value = value;}
			get {
                    if(@Object[new Guid("816f72b9-66bc-479d-a53d-03ca80424bcb")]==null || @Object[new Guid("816f72b9-66bc-479d-a53d-03ca80424bcb")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("816f72b9-66bc-479d-a53d-03ca80424bcb")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: b747eae1-d0bb-ebbb-8294-dabd97de7bb3
			Description : Publisher	
*/
		public string Publisher
		{	
			set {@Object[new Guid("b747eae1-d0bb-ebbb-8294-dabd97de7bb3")].Value = value;}
			get {
                    if(@Object[new Guid("b747eae1-d0bb-ebbb-8294-dabd97de7bb3")]==null || @Object[new Guid("b747eae1-d0bb-ebbb-8294-dabd97de7bb3")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("b747eae1-d0bb-ebbb-8294-dabd97de7bb3")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: e67f54a2-ed9d-773c-616e-49ca86b5ad51
			Description : Version String	
*/
		public string VersionString
		{	
			set {@Object[new Guid("e67f54a2-ed9d-773c-616e-49ca86b5ad51")].Value = value;}
			get {
                    if(@Object[new Guid("e67f54a2-ed9d-773c-616e-49ca86b5ad51")]==null || @Object[new Guid("e67f54a2-ed9d-773c-616e-49ca86b5ad51")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("e67f54a2-ed9d-773c-616e-49ca86b5ad51")].Value; 
                    
                }		
			
		}
#endregion
#region Relationships
		public void AddAffectedByIncidents(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_SoftwareItemClass.Relationships.System_WorkItemAboutConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> AffectedByIncidentsProjection  
		{
			get{ return emop["IsAboutConfigItems"];}
		}
				
		public void AddAffectedByChanges(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_SoftwareItemClass.Relationships.System_WorkItemAboutConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> AffectedByChangesProjection  
		{
			get{ return emop["IsAboutConfigItems"];}
		}
				
#endregion
		}// end tp class
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: ServiceManager.ConfigurationManagement.Configuration
			public class Microsoft_Windows_AllComputerView_ProjectionType  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public Microsoft_Windows_AllComputerView_ProjectionType(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("61bf8124-0a73-6398-b11b-c5864e1ef712");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("6f584aa4-713d-5ed7-8f8d-75fd6cf0deb0");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static Microsoft_Windows_AllComputerView_ProjectionType Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, Microsoft_Windows_ComputerClass.GetManagementPackClass());	
					return new  Microsoft_Windows_AllComputerView_ProjectionType(p);
				}
								
				public static Microsoft_Windows_AllComputerView_ProjectionType Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.Computer']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("61bf8124-0a73-6398-b11b-c5864e1ef712"), property, id);
					return  new Microsoft_Windows_AllComputerView_ProjectionType(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.String	
			Id 			: 488183e9-d2bb-2dd8-b872-18a20a1c9fa6
			Description : The AD Security Identifier for this computer	
*/
		public string ActiveDirectoryObjectSid
		{	
			set {@Object[new Guid("488183e9-d2bb-2dd8-b872-18a20a1c9fa6")].Value = value;}
			get {
                    if(@Object[new Guid("488183e9-d2bb-2dd8-b872-18a20a1c9fa6")]==null || @Object[new Guid("488183e9-d2bb-2dd8-b872-18a20a1c9fa6")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("488183e9-d2bb-2dd8-b872-18a20a1c9fa6")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 4a1e1c69-c659-af91-e7a8-d886008032f3
			Description : Active Directory Site	
*/
		public string ActiveDirectorySite
		{	
			set {@Object[new Guid("4a1e1c69-c659-af91-e7a8-d886008032f3")].Value = value;}
			get {
                    if(@Object[new Guid("4a1e1c69-c659-af91-e7a8-d886008032f3")]==null || @Object[new Guid("4a1e1c69-c659-af91-e7a8-d886008032f3")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("4a1e1c69-c659-af91-e7a8-d886008032f3")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: a6b7ea8d-9423-8529-cb21-87ac1a21fdcb
			Description : Asset status	
*/
		public ManagementPackEnumeration AssetStatus
		{	
			set {@Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")].Value = value;}
			get
			{
				if(@Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d3b003ee-7bb7-6456-2d45-c2e764df37a6
			Description : The fully qualified domain name of this computer.	
*/
		public string DNSName
		{	
			set {@Object[new Guid("d3b003ee-7bb7-6456-2d45-c2e764df37a6")].Value = value;}
			get {
                    if(@Object[new Guid("d3b003ee-7bb7-6456-2d45-c2e764df37a6")]==null || @Object[new Guid("d3b003ee-7bb7-6456-2d45-c2e764df37a6")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d3b003ee-7bb7-6456-2d45-c2e764df37a6")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 9f2cafc8-7a18-1c76-b709-d51b01d3b3d3
			Description : DNS Domain Name	
*/
		public string DomainDnsName
		{	
			set {@Object[new Guid("9f2cafc8-7a18-1c76-b709-d51b01d3b3d3")].Value = value;}
			get {
                    if(@Object[new Guid("9f2cafc8-7a18-1c76-b709-d51b01d3b3d3")]==null || @Object[new Guid("9f2cafc8-7a18-1c76-b709-d51b01d3b3d3")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("9f2cafc8-7a18-1c76-b709-d51b01d3b3d3")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 1704a09d-8063-021a-9b80-2c47622ecf0f
			Description : DNS Forest Name	
*/
		public string ForestDnsName
		{	
			set {@Object[new Guid("1704a09d-8063-021a-9b80-2c47622ecf0f")].Value = value;}
			get {
                    if(@Object[new Guid("1704a09d-8063-021a-9b80-2c47622ecf0f")]==null || @Object[new Guid("1704a09d-8063-021a-9b80-2c47622ecf0f")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("1704a09d-8063-021a-9b80-2c47622ecf0f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: f97e7c31-f713-e2a6-0450-239a62363651
			Description : The IP address for this computer.	
*/
		public string IPAddress
		{	
			set {@Object[new Guid("f97e7c31-f713-e2a6-0450-239a62363651")].Value = value;}
			get {
                    if(@Object[new Guid("f97e7c31-f713-e2a6-0450-239a62363651")]==null || @Object[new Guid("f97e7c31-f713-e2a6-0450-239a62363651")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("f97e7c31-f713-e2a6-0450-239a62363651")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: 6832a546-b39d-aff8-94e1-660bbd336687
			Description : Virtual Machine	
*/
		public bool? IsVirtualMachine
		{	
			set {@Object[new Guid("6832a546-b39d-aff8-94e1-660bbd336687")].Value = value;}
			get
			{
				if(@Object[new Guid("6832a546-b39d-aff8-94e1-660bbd336687")] != null)
				return  (bool?) @Object[new Guid("6832a546-b39d-aff8-94e1-660bbd336687")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.DateTime	
			Id 			: 6223ef72-50de-b1fb-d666-397cefd264ea
			Description : Last Inventory Date	
*/
		public DateTime? LastInventoryDate
		{	
			set {@Object[new Guid("6223ef72-50de-b1fb-d666-397cefd264ea")].Value = value;}
			get {
                    if(@Object[new Guid("6223ef72-50de-b1fb-d666-397cefd264ea")]==null || @Object[new Guid("6223ef72-50de-b1fb-d666-397cefd264ea")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("6223ef72-50de-b1fb-d666-397cefd264ea")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Int32	
			Id 			: 02563965-6649-f495-aeb7-bd8a6eab33a7
			Description : Logical Processors	
*/
		public int LogicalProcessors
		{	
			set {@Object[new Guid("02563965-6649-f495-aeb7-bd8a6eab33a7")].Value = value;}
			get {
                    if(@Object[new Guid("02563965-6649-f495-aeb7-bd8a6eab33a7")]==null || @Object[new Guid("02563965-6649-f495-aeb7-bd8a6eab33a7")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("02563965-6649-f495-aeb7-bd8a6eab33a7")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 879a4dee-444f-186b-cc6f-2e9cb89d87c3
			Description : The NetBIOS name for this computer.	
*/
		public string NetbiosComputerName
		{	
			set {@Object[new Guid("879a4dee-444f-186b-cc6f-2e9cb89d87c3")].Value = value;}
			get {
                    if(@Object[new Guid("879a4dee-444f-186b-cc6f-2e9cb89d87c3")]==null || @Object[new Guid("879a4dee-444f-186b-cc6f-2e9cb89d87c3")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("879a4dee-444f-186b-cc6f-2e9cb89d87c3")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 756493d6-f2a2-4f35-8970-953d7c828cd0
			Description : The NetBIOS domain name for this computer.	
*/
		public string NetbiosDomainName
		{	
			set {@Object[new Guid("756493d6-f2a2-4f35-8970-953d7c828cd0")].Value = value;}
			get {
                    if(@Object[new Guid("756493d6-f2a2-4f35-8970-953d7c828cd0")]==null || @Object[new Guid("756493d6-f2a2-4f35-8970-953d7c828cd0")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("756493d6-f2a2-4f35-8970-953d7c828cd0")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 8f538d63-86da-c149-3c84-1f1aace2f930
			Description : The network name for this computer	
*/
		public string NetworkName
		{	
			set {@Object[new Guid("8f538d63-86da-c149-3c84-1f1aace2f930")].Value = value;}
			get {
                    if(@Object[new Guid("8f538d63-86da-c149-3c84-1f1aace2f930")]==null || @Object[new Guid("8f538d63-86da-c149-3c84-1f1aace2f930")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("8f538d63-86da-c149-3c84-1f1aace2f930")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 55124dce-750d-bd54-4b92-d1fddf99adec
			Description : Notes	
*/
		public string Notes
		{	
			set {@Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value = value;}
			get {
                    if(@Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")]==null || @Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 11927069-6957-dfcf-a277-08a784221325
			Description : Object status	
*/
		public ManagementPackEnumeration ObjectStatus
		{	
			set {@Object[new Guid("11927069-6957-dfcf-a277-08a784221325")].Value = value;}
			get
			{
				if(@Object[new Guid("11927069-6957-dfcf-a277-08a784221325")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("11927069-6957-dfcf-a277-08a784221325")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Int32	
			Id 			: 68f597b6-aada-7baa-b544-fe67c737be32
			Description : Offset In Minutes From Greenwich Time	
*/
		public int OffsetInMinuteFromGreenwichTime
		{	
			set {@Object[new Guid("68f597b6-aada-7baa-b544-fe67c737be32")].Value = value;}
			get {
                    if(@Object[new Guid("68f597b6-aada-7baa-b544-fe67c737be32")]==null || @Object[new Guid("68f597b6-aada-7baa-b544-fe67c737be32")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("68f597b6-aada-7baa-b544-fe67c737be32")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: bfdf9a0d-3393-a720-f24a-17ea701eb77a
			Description : Organizational Unit	
*/
		public string OrganizationalUnit
		{	
			set {@Object[new Guid("bfdf9a0d-3393-a720-f24a-17ea701eb77a")].Value = value;}
			get {
                    if(@Object[new Guid("bfdf9a0d-3393-a720-f24a-17ea701eb77a")]==null || @Object[new Guid("bfdf9a0d-3393-a720-f24a-17ea701eb77a")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("bfdf9a0d-3393-a720-f24a-17ea701eb77a")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 5c324096-d928-76db-e9e7-e629dcc261b1
			Description : The principal name of this Computer.	
*/
		public string PrincipalName
		{	
			set {@Object[new Guid("5c324096-d928-76db-e9e7-e629dcc261b1")].Value = value;}
			get {
                    if(@Object[new Guid("5c324096-d928-76db-e9e7-e629dcc261b1")]==null || @Object[new Guid("5c324096-d928-76db-e9e7-e629dcc261b1")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("5c324096-d928-76db-e9e7-e629dcc261b1")].Value; 
                    
                }		
			
		}
#endregion
#region Relationships
		public void AddPhysicalComputer(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = Microsoft_Windows_ComputerClass.Relationships.Microsoft_SystemCenter_ConfigurationManager_DeployedComputerRunsWindowsComputer;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> PhysicalComputerProjection  
		{
			get{ return emop["DeployedComputer"];}
		}
				
         
        public IComposableProjection OperatingSystemProjection
		{
			get{ return emop["OperatingSystem"].FirstOrDefault(); }
		}    
            
		public string OperatingSystemName  
		{
			get{
                var projection = emop["OperatingSystem"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddOperatingSystem(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = Microsoft_Windows_ComputerClass.Relationships.Microsoft_Windows_ComputerHostsOperatingSystem;
					
			emop.Add(value, endPoint.Target);
		}
		
#endregion
		}// end tp class
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: ServiceManager.ConfigurationManagement.Configuration
			public class Microsoft_Windows_AffectedByIncidentSoftwareUpdateView_ProjectionType  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public Microsoft_Windows_AffectedByIncidentSoftwareUpdateView_ProjectionType(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("1bf39115-cf3a-e11f-bbaa-e7e5685f4c50");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("6f584aa4-713d-5ed7-8f8d-75fd6cf0deb0");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static Microsoft_Windows_AffectedByIncidentSoftwareUpdateView_ProjectionType Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, System_SoftwareUpdateClass.GetManagementPackClass());	
					return new  Microsoft_Windows_AffectedByIncidentSoftwareUpdateView_ProjectionType(p);
				}
								
				public static Microsoft_Windows_AffectedByIncidentSoftwareUpdateView_ProjectionType Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.LogicalEntity']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("1bf39115-cf3a-e11f-bbaa-e7e5685f4c50"), property, id);
					return  new Microsoft_Windows_AffectedByIncidentSoftwareUpdateView_ProjectionType(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.Enum	
			Id 			: a6b7ea8d-9423-8529-cb21-87ac1a21fdcb
			Description : Asset status	
*/
		public ManagementPackEnumeration AssetStatus
		{	
			set {@Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")].Value = value;}
			get
			{
				if(@Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 55124dce-750d-bd54-4b92-d1fddf99adec
			Description : Notes	
*/
		public string Notes
		{	
			set {@Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value = value;}
			get {
                    if(@Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")]==null || @Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 11927069-6957-dfcf-a277-08a784221325
			Description : Object status	
*/
		public ManagementPackEnumeration ObjectStatus
		{	
			set {@Object[new Guid("11927069-6957-dfcf-a277-08a784221325")].Value = value;}
			get
			{
				if(@Object[new Guid("11927069-6957-dfcf-a277-08a784221325")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("11927069-6957-dfcf-a277-08a784221325")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: f9af25bc-d8e4-02ca-c607-ba9d5ad79850
			Description : Title	
*/
		public string Title
		{	
			set {@Object[new Guid("f9af25bc-d8e4-02ca-c607-ba9d5ad79850")].Value = value;}
			get {
                    if(@Object[new Guid("f9af25bc-d8e4-02ca-c607-ba9d5ad79850")]==null || @Object[new Guid("f9af25bc-d8e4-02ca-c607-ba9d5ad79850")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("f9af25bc-d8e4-02ca-c607-ba9d5ad79850")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 2fa20ad3-c8d8-f6d6-9224-a77cd07bf6f3
			Description : Vendor	
*/
		public string Vendor
		{	
			set {@Object[new Guid("2fa20ad3-c8d8-f6d6-9224-a77cd07bf6f3")].Value = value;}
			get {
                    if(@Object[new Guid("2fa20ad3-c8d8-f6d6-9224-a77cd07bf6f3")]==null || @Object[new Guid("2fa20ad3-c8d8-f6d6-9224-a77cd07bf6f3")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("2fa20ad3-c8d8-f6d6-9224-a77cd07bf6f3")].Value; 
                    
                }		
			
		}
#endregion
#region Relationships
		public void AddAffectedByIncidents(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_SoftwareUpdateClass.Relationships.System_WorkItemAboutConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> AffectedByIncidentsProjection  
		{
			get{ return emop["IsAboutConfigItems"];}
		}
				
#endregion
		}// end tp class
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: ServiceManager.ConfigurationManagement.Configuration
			public class Microsoft_Windows_AffectedByIncidentSoftwareView_ProjectionType  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public Microsoft_Windows_AffectedByIncidentSoftwareView_ProjectionType(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("1e0b8740-a122-9f88-206f-ed644d86a9aa");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("6f584aa4-713d-5ed7-8f8d-75fd6cf0deb0");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static Microsoft_Windows_AffectedByIncidentSoftwareView_ProjectionType Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, System_SoftwareItemClass.GetManagementPackClass());	
					return new  Microsoft_Windows_AffectedByIncidentSoftwareView_ProjectionType(p);
				}
								
				public static Microsoft_Windows_AffectedByIncidentSoftwareView_ProjectionType Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.LogicalEntity']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("1e0b8740-a122-9f88-206f-ed644d86a9aa"), property, id);
					return  new Microsoft_Windows_AffectedByIncidentSoftwareView_ProjectionType(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.Enum	
			Id 			: a6b7ea8d-9423-8529-cb21-87ac1a21fdcb
			Description : Asset status	
*/
		public ManagementPackEnumeration AssetStatus
		{	
			set {@Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")].Value = value;}
			get
			{
				if(@Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: 95b838a1-d55b-bd54-09ed-c9a9fa816ac0
			Description : Is Virtual Application	
*/
		public bool? IsVirtualApplication
		{	
			set {@Object[new Guid("95b838a1-d55b-bd54-09ed-c9a9fa816ac0")].Value = value;}
			get
			{
				if(@Object[new Guid("95b838a1-d55b-bd54-09ed-c9a9fa816ac0")] != null)
				return  (bool?) @Object[new Guid("95b838a1-d55b-bd54-09ed-c9a9fa816ac0")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Int32	
			Id 			: f2459797-6d6e-1009-3f9d-9292787c1a75
			Description : Locale ID	
*/
		public int LocaleID
		{	
			set {@Object[new Guid("f2459797-6d6e-1009-3f9d-9292787c1a75")].Value = value;}
			get {
                    if(@Object[new Guid("f2459797-6d6e-1009-3f9d-9292787c1a75")]==null || @Object[new Guid("f2459797-6d6e-1009-3f9d-9292787c1a75")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("f2459797-6d6e-1009-3f9d-9292787c1a75")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 9cb5bc6e-f8ea-8e90-4c2b-4f6e95bb21a8
			Description : Major Version	
*/
		public string MajorVersion
		{	
			set {@Object[new Guid("9cb5bc6e-f8ea-8e90-4c2b-4f6e95bb21a8")].Value = value;}
			get {
                    if(@Object[new Guid("9cb5bc6e-f8ea-8e90-4c2b-4f6e95bb21a8")]==null || @Object[new Guid("9cb5bc6e-f8ea-8e90-4c2b-4f6e95bb21a8")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("9cb5bc6e-f8ea-8e90-4c2b-4f6e95bb21a8")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 047dd640-8a7d-32c3-426a-16e83e310178
			Description : Minor Version	
*/
		public string MinorVersion
		{	
			set {@Object[new Guid("047dd640-8a7d-32c3-426a-16e83e310178")].Value = value;}
			get {
                    if(@Object[new Guid("047dd640-8a7d-32c3-426a-16e83e310178")]==null || @Object[new Guid("047dd640-8a7d-32c3-426a-16e83e310178")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("047dd640-8a7d-32c3-426a-16e83e310178")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 55124dce-750d-bd54-4b92-d1fddf99adec
			Description : Notes	
*/
		public string Notes
		{	
			set {@Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value = value;}
			get {
                    if(@Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")]==null || @Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 11927069-6957-dfcf-a277-08a784221325
			Description : Object status	
*/
		public ManagementPackEnumeration ObjectStatus
		{	
			set {@Object[new Guid("11927069-6957-dfcf-a277-08a784221325")].Value = value;}
			get
			{
				if(@Object[new Guid("11927069-6957-dfcf-a277-08a784221325")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("11927069-6957-dfcf-a277-08a784221325")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 816f72b9-66bc-479d-a53d-03ca80424bcb
			Description : Product Name	
*/
		public string ProductName
		{	
			set {@Object[new Guid("816f72b9-66bc-479d-a53d-03ca80424bcb")].Value = value;}
			get {
                    if(@Object[new Guid("816f72b9-66bc-479d-a53d-03ca80424bcb")]==null || @Object[new Guid("816f72b9-66bc-479d-a53d-03ca80424bcb")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("816f72b9-66bc-479d-a53d-03ca80424bcb")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: b747eae1-d0bb-ebbb-8294-dabd97de7bb3
			Description : Publisher	
*/
		public string Publisher
		{	
			set {@Object[new Guid("b747eae1-d0bb-ebbb-8294-dabd97de7bb3")].Value = value;}
			get {
                    if(@Object[new Guid("b747eae1-d0bb-ebbb-8294-dabd97de7bb3")]==null || @Object[new Guid("b747eae1-d0bb-ebbb-8294-dabd97de7bb3")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("b747eae1-d0bb-ebbb-8294-dabd97de7bb3")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: e67f54a2-ed9d-773c-616e-49ca86b5ad51
			Description : Version String	
*/
		public string VersionString
		{	
			set {@Object[new Guid("e67f54a2-ed9d-773c-616e-49ca86b5ad51")].Value = value;}
			get {
                    if(@Object[new Guid("e67f54a2-ed9d-773c-616e-49ca86b5ad51")]==null || @Object[new Guid("e67f54a2-ed9d-773c-616e-49ca86b5ad51")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("e67f54a2-ed9d-773c-616e-49ca86b5ad51")].Value; 
                    
                }		
			
		}
#endregion
#region Relationships
		public void AddAffectedByIncidents(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_SoftwareItemClass.Relationships.System_WorkItemAboutConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> AffectedByIncidentsProjection  
		{
			get{ return emop["IsAboutConfigItems"];}
		}
				
#endregion
		}// end tp class
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: ServiceManager.ConfigurationManagement.Configuration
			public class Microsoft_Windows_AffectedByChangeSoftwareView_ProjectionType  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public Microsoft_Windows_AffectedByChangeSoftwareView_ProjectionType(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("73064b47-371d-7fa4-d1f2-ef9fdf84593d");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("6f584aa4-713d-5ed7-8f8d-75fd6cf0deb0");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static Microsoft_Windows_AffectedByChangeSoftwareView_ProjectionType Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, System_SoftwareItemClass.GetManagementPackClass());	
					return new  Microsoft_Windows_AffectedByChangeSoftwareView_ProjectionType(p);
				}
								
				public static Microsoft_Windows_AffectedByChangeSoftwareView_ProjectionType Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.LogicalEntity']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("73064b47-371d-7fa4-d1f2-ef9fdf84593d"), property, id);
					return  new Microsoft_Windows_AffectedByChangeSoftwareView_ProjectionType(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.Enum	
			Id 			: a6b7ea8d-9423-8529-cb21-87ac1a21fdcb
			Description : Asset status	
*/
		public ManagementPackEnumeration AssetStatus
		{	
			set {@Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")].Value = value;}
			get
			{
				if(@Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: 95b838a1-d55b-bd54-09ed-c9a9fa816ac0
			Description : Is Virtual Application	
*/
		public bool? IsVirtualApplication
		{	
			set {@Object[new Guid("95b838a1-d55b-bd54-09ed-c9a9fa816ac0")].Value = value;}
			get
			{
				if(@Object[new Guid("95b838a1-d55b-bd54-09ed-c9a9fa816ac0")] != null)
				return  (bool?) @Object[new Guid("95b838a1-d55b-bd54-09ed-c9a9fa816ac0")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Int32	
			Id 			: f2459797-6d6e-1009-3f9d-9292787c1a75
			Description : Locale ID	
*/
		public int LocaleID
		{	
			set {@Object[new Guid("f2459797-6d6e-1009-3f9d-9292787c1a75")].Value = value;}
			get {
                    if(@Object[new Guid("f2459797-6d6e-1009-3f9d-9292787c1a75")]==null || @Object[new Guid("f2459797-6d6e-1009-3f9d-9292787c1a75")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("f2459797-6d6e-1009-3f9d-9292787c1a75")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 9cb5bc6e-f8ea-8e90-4c2b-4f6e95bb21a8
			Description : Major Version	
*/
		public string MajorVersion
		{	
			set {@Object[new Guid("9cb5bc6e-f8ea-8e90-4c2b-4f6e95bb21a8")].Value = value;}
			get {
                    if(@Object[new Guid("9cb5bc6e-f8ea-8e90-4c2b-4f6e95bb21a8")]==null || @Object[new Guid("9cb5bc6e-f8ea-8e90-4c2b-4f6e95bb21a8")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("9cb5bc6e-f8ea-8e90-4c2b-4f6e95bb21a8")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 047dd640-8a7d-32c3-426a-16e83e310178
			Description : Minor Version	
*/
		public string MinorVersion
		{	
			set {@Object[new Guid("047dd640-8a7d-32c3-426a-16e83e310178")].Value = value;}
			get {
                    if(@Object[new Guid("047dd640-8a7d-32c3-426a-16e83e310178")]==null || @Object[new Guid("047dd640-8a7d-32c3-426a-16e83e310178")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("047dd640-8a7d-32c3-426a-16e83e310178")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 55124dce-750d-bd54-4b92-d1fddf99adec
			Description : Notes	
*/
		public string Notes
		{	
			set {@Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value = value;}
			get {
                    if(@Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")]==null || @Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 11927069-6957-dfcf-a277-08a784221325
			Description : Object status	
*/
		public ManagementPackEnumeration ObjectStatus
		{	
			set {@Object[new Guid("11927069-6957-dfcf-a277-08a784221325")].Value = value;}
			get
			{
				if(@Object[new Guid("11927069-6957-dfcf-a277-08a784221325")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("11927069-6957-dfcf-a277-08a784221325")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 816f72b9-66bc-479d-a53d-03ca80424bcb
			Description : Product Name	
*/
		public string ProductName
		{	
			set {@Object[new Guid("816f72b9-66bc-479d-a53d-03ca80424bcb")].Value = value;}
			get {
                    if(@Object[new Guid("816f72b9-66bc-479d-a53d-03ca80424bcb")]==null || @Object[new Guid("816f72b9-66bc-479d-a53d-03ca80424bcb")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("816f72b9-66bc-479d-a53d-03ca80424bcb")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: b747eae1-d0bb-ebbb-8294-dabd97de7bb3
			Description : Publisher	
*/
		public string Publisher
		{	
			set {@Object[new Guid("b747eae1-d0bb-ebbb-8294-dabd97de7bb3")].Value = value;}
			get {
                    if(@Object[new Guid("b747eae1-d0bb-ebbb-8294-dabd97de7bb3")]==null || @Object[new Guid("b747eae1-d0bb-ebbb-8294-dabd97de7bb3")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("b747eae1-d0bb-ebbb-8294-dabd97de7bb3")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: e67f54a2-ed9d-773c-616e-49ca86b5ad51
			Description : Version String	
*/
		public string VersionString
		{	
			set {@Object[new Guid("e67f54a2-ed9d-773c-616e-49ca86b5ad51")].Value = value;}
			get {
                    if(@Object[new Guid("e67f54a2-ed9d-773c-616e-49ca86b5ad51")]==null || @Object[new Guid("e67f54a2-ed9d-773c-616e-49ca86b5ad51")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("e67f54a2-ed9d-773c-616e-49ca86b5ad51")].Value; 
                    
                }		
			
		}
#endregion
#region Relationships
		public void AddAffectedByChanges(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_SoftwareItemClass.Relationships.System_WorkItemAboutConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> AffectedByChangesProjection  
		{
			get{ return emop["IsAboutConfigItems"];}
		}
				
#endregion
		}// end tp class
		}// end mp class
			public class ServiceManager_ConfigurationManagement_Library
			{
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: ServiceManager.ConfigurationManagement.Library
			public class Microsoft_Windows_Software_ProjectionType  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public Microsoft_Windows_Software_ProjectionType(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("22cc3106-ce67-9e76-2e98-26309e12c153");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("19110da0-0b5d-6c48-085f-8db74d662da4");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static Microsoft_Windows_Software_ProjectionType Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, System_SoftwareItemClass.GetManagementPackClass());	
					return new  Microsoft_Windows_Software_ProjectionType(p);
				}
								
				public static Microsoft_Windows_Software_ProjectionType Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.LogicalEntity']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("22cc3106-ce67-9e76-2e98-26309e12c153"), property, id);
					return  new Microsoft_Windows_Software_ProjectionType(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.Enum	
			Id 			: a6b7ea8d-9423-8529-cb21-87ac1a21fdcb
			Description : Asset status	
*/
		public ManagementPackEnumeration AssetStatus
		{	
			set {@Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")].Value = value;}
			get
			{
				if(@Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: 95b838a1-d55b-bd54-09ed-c9a9fa816ac0
			Description : Is Virtual Application	
*/
		public bool? IsVirtualApplication
		{	
			set {@Object[new Guid("95b838a1-d55b-bd54-09ed-c9a9fa816ac0")].Value = value;}
			get
			{
				if(@Object[new Guid("95b838a1-d55b-bd54-09ed-c9a9fa816ac0")] != null)
				return  (bool?) @Object[new Guid("95b838a1-d55b-bd54-09ed-c9a9fa816ac0")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Int32	
			Id 			: f2459797-6d6e-1009-3f9d-9292787c1a75
			Description : Locale ID	
*/
		public int LocaleID
		{	
			set {@Object[new Guid("f2459797-6d6e-1009-3f9d-9292787c1a75")].Value = value;}
			get {
                    if(@Object[new Guid("f2459797-6d6e-1009-3f9d-9292787c1a75")]==null || @Object[new Guid("f2459797-6d6e-1009-3f9d-9292787c1a75")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("f2459797-6d6e-1009-3f9d-9292787c1a75")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 9cb5bc6e-f8ea-8e90-4c2b-4f6e95bb21a8
			Description : Major Version	
*/
		public string MajorVersion
		{	
			set {@Object[new Guid("9cb5bc6e-f8ea-8e90-4c2b-4f6e95bb21a8")].Value = value;}
			get {
                    if(@Object[new Guid("9cb5bc6e-f8ea-8e90-4c2b-4f6e95bb21a8")]==null || @Object[new Guid("9cb5bc6e-f8ea-8e90-4c2b-4f6e95bb21a8")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("9cb5bc6e-f8ea-8e90-4c2b-4f6e95bb21a8")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 047dd640-8a7d-32c3-426a-16e83e310178
			Description : Minor Version	
*/
		public string MinorVersion
		{	
			set {@Object[new Guid("047dd640-8a7d-32c3-426a-16e83e310178")].Value = value;}
			get {
                    if(@Object[new Guid("047dd640-8a7d-32c3-426a-16e83e310178")]==null || @Object[new Guid("047dd640-8a7d-32c3-426a-16e83e310178")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("047dd640-8a7d-32c3-426a-16e83e310178")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 55124dce-750d-bd54-4b92-d1fddf99adec
			Description : Notes	
*/
		public string Notes
		{	
			set {@Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value = value;}
			get {
                    if(@Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")]==null || @Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 11927069-6957-dfcf-a277-08a784221325
			Description : Object status	
*/
		public ManagementPackEnumeration ObjectStatus
		{	
			set {@Object[new Guid("11927069-6957-dfcf-a277-08a784221325")].Value = value;}
			get
			{
				if(@Object[new Guid("11927069-6957-dfcf-a277-08a784221325")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("11927069-6957-dfcf-a277-08a784221325")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 816f72b9-66bc-479d-a53d-03ca80424bcb
			Description : Product Name	
*/
		public string ProductName
		{	
			set {@Object[new Guid("816f72b9-66bc-479d-a53d-03ca80424bcb")].Value = value;}
			get {
                    if(@Object[new Guid("816f72b9-66bc-479d-a53d-03ca80424bcb")]==null || @Object[new Guid("816f72b9-66bc-479d-a53d-03ca80424bcb")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("816f72b9-66bc-479d-a53d-03ca80424bcb")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: b747eae1-d0bb-ebbb-8294-dabd97de7bb3
			Description : Publisher	
*/
		public string Publisher
		{	
			set {@Object[new Guid("b747eae1-d0bb-ebbb-8294-dabd97de7bb3")].Value = value;}
			get {
                    if(@Object[new Guid("b747eae1-d0bb-ebbb-8294-dabd97de7bb3")]==null || @Object[new Guid("b747eae1-d0bb-ebbb-8294-dabd97de7bb3")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("b747eae1-d0bb-ebbb-8294-dabd97de7bb3")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: e67f54a2-ed9d-773c-616e-49ca86b5ad51
			Description : Version String	
*/
		public string VersionString
		{	
			set {@Object[new Guid("e67f54a2-ed9d-773c-616e-49ca86b5ad51")].Value = value;}
			get {
                    if(@Object[new Guid("e67f54a2-ed9d-773c-616e-49ca86b5ad51")]==null || @Object[new Guid("e67f54a2-ed9d-773c-616e-49ca86b5ad51")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("e67f54a2-ed9d-773c-616e-49ca86b5ad51")].Value; 
                    
                }		
			
		}
#endregion
#region Relationships
         
        public IComposableProjection CustodianProjection
		{
			get{ return emop["OwnedBy"].FirstOrDefault(); }
		}    
            
		public string CustodianName  
		{
			get{
                var projection = emop["OwnedBy"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddCustodian(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_SoftwareItemClass.Relationships.System_ConfigItemOwnedByUser;
					
			emop.Add(value, endPoint.Target);
		}
		
		public void AddImpactedWorkItem(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_SoftwareItemClass.Relationships.System_WorkItemRelatesToConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> ImpactedWorkItemProjection  
		{
			get{ return emop["RelatesToWorkItem"];}
		}
				
		public void AddRelatedWorkItem(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_SoftwareItemClass.Relationships.System_WorkItemAboutConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> RelatedWorkItemProjection  
		{
			get{ return emop["IsAboutConfigItems"];}
		}
				
		public void AddFileAttachment(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_SoftwareItemClass.Relationships.System_ConfigItemHasFileAttachment;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> FileAttachmentProjection  
		{
			get{ return emop["FileAttachment"];}
		}
				
		public void AddRelatedConfigItem(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_SoftwareItemClass.Relationships.System_ConfigItemRelatesToConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> RelatedConfigItemProjection  
		{
			get{ return emop["TargetConfigItem"];}
		}
				
		public void AddRelatedConfigItemSource(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_SoftwareItemClass.Relationships.System_ConfigItemRelatesToConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> RelatedConfigItemSourceProjection  
		{
			get{ return emop["SourceConfigItem"];}
		}
				
		public void AddRelatedKnowledgeArticles(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_SoftwareItemClass.Relationships.System_EntityLinksToKnowledgeDocument;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> RelatedKnowledgeArticlesProjection  
		{
			get{ return emop["KnowledgeDocument"];}
		}
				
#endregion
		}// end tp class
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: ServiceManager.ConfigurationManagement.Library
			public class Microsoft_Windows_SoftwareUpdate_ProjectionType  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public Microsoft_Windows_SoftwareUpdate_ProjectionType(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("4897f606-6105-ca7a-e294-7ac2b68d59fb");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("19110da0-0b5d-6c48-085f-8db74d662da4");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static Microsoft_Windows_SoftwareUpdate_ProjectionType Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, System_SoftwareUpdateClass.GetManagementPackClass());	
					return new  Microsoft_Windows_SoftwareUpdate_ProjectionType(p);
				}
								
				public static Microsoft_Windows_SoftwareUpdate_ProjectionType Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.LogicalEntity']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("4897f606-6105-ca7a-e294-7ac2b68d59fb"), property, id);
					return  new Microsoft_Windows_SoftwareUpdate_ProjectionType(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.Enum	
			Id 			: a6b7ea8d-9423-8529-cb21-87ac1a21fdcb
			Description : Asset status	
*/
		public ManagementPackEnumeration AssetStatus
		{	
			set {@Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")].Value = value;}
			get
			{
				if(@Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 55124dce-750d-bd54-4b92-d1fddf99adec
			Description : Notes	
*/
		public string Notes
		{	
			set {@Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value = value;}
			get {
                    if(@Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")]==null || @Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 11927069-6957-dfcf-a277-08a784221325
			Description : Object status	
*/
		public ManagementPackEnumeration ObjectStatus
		{	
			set {@Object[new Guid("11927069-6957-dfcf-a277-08a784221325")].Value = value;}
			get
			{
				if(@Object[new Guid("11927069-6957-dfcf-a277-08a784221325")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("11927069-6957-dfcf-a277-08a784221325")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: f9af25bc-d8e4-02ca-c607-ba9d5ad79850
			Description : Title	
*/
		public string Title
		{	
			set {@Object[new Guid("f9af25bc-d8e4-02ca-c607-ba9d5ad79850")].Value = value;}
			get {
                    if(@Object[new Guid("f9af25bc-d8e4-02ca-c607-ba9d5ad79850")]==null || @Object[new Guid("f9af25bc-d8e4-02ca-c607-ba9d5ad79850")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("f9af25bc-d8e4-02ca-c607-ba9d5ad79850")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 2fa20ad3-c8d8-f6d6-9224-a77cd07bf6f3
			Description : Vendor	
*/
		public string Vendor
		{	
			set {@Object[new Guid("2fa20ad3-c8d8-f6d6-9224-a77cd07bf6f3")].Value = value;}
			get {
                    if(@Object[new Guid("2fa20ad3-c8d8-f6d6-9224-a77cd07bf6f3")]==null || @Object[new Guid("2fa20ad3-c8d8-f6d6-9224-a77cd07bf6f3")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("2fa20ad3-c8d8-f6d6-9224-a77cd07bf6f3")].Value; 
                    
                }		
			
		}
#endregion
#region Relationships
         
        public IComposableProjection CustodianProjection
		{
			get{ return emop["OwnedBy"].FirstOrDefault(); }
		}    
            
		public string CustodianName  
		{
			get{
                var projection = emop["OwnedBy"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddCustodian(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_SoftwareUpdateClass.Relationships.System_ConfigItemOwnedByUser;
					
			emop.Add(value, endPoint.Target);
		}
		
		public void AddImpactedWorkItem(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_SoftwareUpdateClass.Relationships.System_WorkItemRelatesToConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> ImpactedWorkItemProjection  
		{
			get{ return emop["RelatesToWorkItem"];}
		}
				
		public void AddRelatedWorkItem(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_SoftwareUpdateClass.Relationships.System_WorkItemAboutConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> RelatedWorkItemProjection  
		{
			get{ return emop["IsAboutConfigItems"];}
		}
				
		public void AddFileAttachment(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_SoftwareUpdateClass.Relationships.System_ConfigItemHasFileAttachment;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> FileAttachmentProjection  
		{
			get{ return emop["FileAttachment"];}
		}
				
		public void AddRelatedConfigItem(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_SoftwareUpdateClass.Relationships.System_ConfigItemRelatesToConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> RelatedConfigItemProjection  
		{
			get{ return emop["TargetConfigItem"];}
		}
				
		public void AddRelatedConfigItemSource(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_SoftwareUpdateClass.Relationships.System_ConfigItemRelatesToConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> RelatedConfigItemSourceProjection  
		{
			get{ return emop["SourceConfigItem"];}
		}
				
		public void AddRelatedKnowledgeArticles(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_SoftwareUpdateClass.Relationships.System_EntityLinksToKnowledgeDocument;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> RelatedKnowledgeArticlesProjection  
		{
			get{ return emop["KnowledgeDocument"];}
		}
				
#endregion
		}// end tp class
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: ServiceManager.ConfigurationManagement.Library
			public class Microsoft_Windows_Computer_ProjectionType  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public Microsoft_Windows_Computer_ProjectionType(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("c95d4106-3f24-d3cc-232e-9f51198b295c");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("19110da0-0b5d-6c48-085f-8db74d662da4");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static Microsoft_Windows_Computer_ProjectionType Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, Microsoft_Windows_ComputerClass.GetManagementPackClass());	
					return new  Microsoft_Windows_Computer_ProjectionType(p);
				}
								
				public static Microsoft_Windows_Computer_ProjectionType Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.Computer']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("c95d4106-3f24-d3cc-232e-9f51198b295c"), property, id);
					return  new Microsoft_Windows_Computer_ProjectionType(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.String	
			Id 			: 488183e9-d2bb-2dd8-b872-18a20a1c9fa6
			Description : The AD Security Identifier for this computer	
*/
		public string ActiveDirectoryObjectSid
		{	
			set {@Object[new Guid("488183e9-d2bb-2dd8-b872-18a20a1c9fa6")].Value = value;}
			get {
                    if(@Object[new Guid("488183e9-d2bb-2dd8-b872-18a20a1c9fa6")]==null || @Object[new Guid("488183e9-d2bb-2dd8-b872-18a20a1c9fa6")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("488183e9-d2bb-2dd8-b872-18a20a1c9fa6")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 4a1e1c69-c659-af91-e7a8-d886008032f3
			Description : Active Directory Site	
*/
		public string ActiveDirectorySite
		{	
			set {@Object[new Guid("4a1e1c69-c659-af91-e7a8-d886008032f3")].Value = value;}
			get {
                    if(@Object[new Guid("4a1e1c69-c659-af91-e7a8-d886008032f3")]==null || @Object[new Guid("4a1e1c69-c659-af91-e7a8-d886008032f3")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("4a1e1c69-c659-af91-e7a8-d886008032f3")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: a6b7ea8d-9423-8529-cb21-87ac1a21fdcb
			Description : Asset status	
*/
		public ManagementPackEnumeration AssetStatus
		{	
			set {@Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")].Value = value;}
			get
			{
				if(@Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d3b003ee-7bb7-6456-2d45-c2e764df37a6
			Description : The fully qualified domain name of this computer.	
*/
		public string DNSName
		{	
			set {@Object[new Guid("d3b003ee-7bb7-6456-2d45-c2e764df37a6")].Value = value;}
			get {
                    if(@Object[new Guid("d3b003ee-7bb7-6456-2d45-c2e764df37a6")]==null || @Object[new Guid("d3b003ee-7bb7-6456-2d45-c2e764df37a6")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d3b003ee-7bb7-6456-2d45-c2e764df37a6")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 9f2cafc8-7a18-1c76-b709-d51b01d3b3d3
			Description : DNS Domain Name	
*/
		public string DomainDnsName
		{	
			set {@Object[new Guid("9f2cafc8-7a18-1c76-b709-d51b01d3b3d3")].Value = value;}
			get {
                    if(@Object[new Guid("9f2cafc8-7a18-1c76-b709-d51b01d3b3d3")]==null || @Object[new Guid("9f2cafc8-7a18-1c76-b709-d51b01d3b3d3")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("9f2cafc8-7a18-1c76-b709-d51b01d3b3d3")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 1704a09d-8063-021a-9b80-2c47622ecf0f
			Description : DNS Forest Name	
*/
		public string ForestDnsName
		{	
			set {@Object[new Guid("1704a09d-8063-021a-9b80-2c47622ecf0f")].Value = value;}
			get {
                    if(@Object[new Guid("1704a09d-8063-021a-9b80-2c47622ecf0f")]==null || @Object[new Guid("1704a09d-8063-021a-9b80-2c47622ecf0f")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("1704a09d-8063-021a-9b80-2c47622ecf0f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: f97e7c31-f713-e2a6-0450-239a62363651
			Description : The IP address for this computer.	
*/
		public string IPAddress
		{	
			set {@Object[new Guid("f97e7c31-f713-e2a6-0450-239a62363651")].Value = value;}
			get {
                    if(@Object[new Guid("f97e7c31-f713-e2a6-0450-239a62363651")]==null || @Object[new Guid("f97e7c31-f713-e2a6-0450-239a62363651")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("f97e7c31-f713-e2a6-0450-239a62363651")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: 6832a546-b39d-aff8-94e1-660bbd336687
			Description : Virtual Machine	
*/
		public bool? IsVirtualMachine
		{	
			set {@Object[new Guid("6832a546-b39d-aff8-94e1-660bbd336687")].Value = value;}
			get
			{
				if(@Object[new Guid("6832a546-b39d-aff8-94e1-660bbd336687")] != null)
				return  (bool?) @Object[new Guid("6832a546-b39d-aff8-94e1-660bbd336687")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.DateTime	
			Id 			: 6223ef72-50de-b1fb-d666-397cefd264ea
			Description : Last Inventory Date	
*/
		public DateTime? LastInventoryDate
		{	
			set {@Object[new Guid("6223ef72-50de-b1fb-d666-397cefd264ea")].Value = value;}
			get {
                    if(@Object[new Guid("6223ef72-50de-b1fb-d666-397cefd264ea")]==null || @Object[new Guid("6223ef72-50de-b1fb-d666-397cefd264ea")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("6223ef72-50de-b1fb-d666-397cefd264ea")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Int32	
			Id 			: 02563965-6649-f495-aeb7-bd8a6eab33a7
			Description : Logical Processors	
*/
		public int LogicalProcessors
		{	
			set {@Object[new Guid("02563965-6649-f495-aeb7-bd8a6eab33a7")].Value = value;}
			get {
                    if(@Object[new Guid("02563965-6649-f495-aeb7-bd8a6eab33a7")]==null || @Object[new Guid("02563965-6649-f495-aeb7-bd8a6eab33a7")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("02563965-6649-f495-aeb7-bd8a6eab33a7")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 879a4dee-444f-186b-cc6f-2e9cb89d87c3
			Description : The NetBIOS name for this computer.	
*/
		public string NetbiosComputerName
		{	
			set {@Object[new Guid("879a4dee-444f-186b-cc6f-2e9cb89d87c3")].Value = value;}
			get {
                    if(@Object[new Guid("879a4dee-444f-186b-cc6f-2e9cb89d87c3")]==null || @Object[new Guid("879a4dee-444f-186b-cc6f-2e9cb89d87c3")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("879a4dee-444f-186b-cc6f-2e9cb89d87c3")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 756493d6-f2a2-4f35-8970-953d7c828cd0
			Description : The NetBIOS domain name for this computer.	
*/
		public string NetbiosDomainName
		{	
			set {@Object[new Guid("756493d6-f2a2-4f35-8970-953d7c828cd0")].Value = value;}
			get {
                    if(@Object[new Guid("756493d6-f2a2-4f35-8970-953d7c828cd0")]==null || @Object[new Guid("756493d6-f2a2-4f35-8970-953d7c828cd0")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("756493d6-f2a2-4f35-8970-953d7c828cd0")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 8f538d63-86da-c149-3c84-1f1aace2f930
			Description : The network name for this computer	
*/
		public string NetworkName
		{	
			set {@Object[new Guid("8f538d63-86da-c149-3c84-1f1aace2f930")].Value = value;}
			get {
                    if(@Object[new Guid("8f538d63-86da-c149-3c84-1f1aace2f930")]==null || @Object[new Guid("8f538d63-86da-c149-3c84-1f1aace2f930")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("8f538d63-86da-c149-3c84-1f1aace2f930")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 55124dce-750d-bd54-4b92-d1fddf99adec
			Description : Notes	
*/
		public string Notes
		{	
			set {@Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value = value;}
			get {
                    if(@Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")]==null || @Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 11927069-6957-dfcf-a277-08a784221325
			Description : Object status	
*/
		public ManagementPackEnumeration ObjectStatus
		{	
			set {@Object[new Guid("11927069-6957-dfcf-a277-08a784221325")].Value = value;}
			get
			{
				if(@Object[new Guid("11927069-6957-dfcf-a277-08a784221325")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("11927069-6957-dfcf-a277-08a784221325")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Int32	
			Id 			: 68f597b6-aada-7baa-b544-fe67c737be32
			Description : Offset In Minutes From Greenwich Time	
*/
		public int OffsetInMinuteFromGreenwichTime
		{	
			set {@Object[new Guid("68f597b6-aada-7baa-b544-fe67c737be32")].Value = value;}
			get {
                    if(@Object[new Guid("68f597b6-aada-7baa-b544-fe67c737be32")]==null || @Object[new Guid("68f597b6-aada-7baa-b544-fe67c737be32")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("68f597b6-aada-7baa-b544-fe67c737be32")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: bfdf9a0d-3393-a720-f24a-17ea701eb77a
			Description : Organizational Unit	
*/
		public string OrganizationalUnit
		{	
			set {@Object[new Guid("bfdf9a0d-3393-a720-f24a-17ea701eb77a")].Value = value;}
			get {
                    if(@Object[new Guid("bfdf9a0d-3393-a720-f24a-17ea701eb77a")]==null || @Object[new Guid("bfdf9a0d-3393-a720-f24a-17ea701eb77a")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("bfdf9a0d-3393-a720-f24a-17ea701eb77a")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 5c324096-d928-76db-e9e7-e629dcc261b1
			Description : The principal name of this Computer.	
*/
		public string PrincipalName
		{	
			set {@Object[new Guid("5c324096-d928-76db-e9e7-e629dcc261b1")].Value = value;}
			get {
                    if(@Object[new Guid("5c324096-d928-76db-e9e7-e629dcc261b1")]==null || @Object[new Guid("5c324096-d928-76db-e9e7-e629dcc261b1")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("5c324096-d928-76db-e9e7-e629dcc261b1")].Value; 
                    
                }		
			
		}
#endregion
#region Relationships
		public void AddPhysicalComputer(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = Microsoft_Windows_ComputerClass.Relationships.Microsoft_SystemCenter_ConfigurationManager_DeployedComputerRunsWindowsComputer;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> PhysicalComputerProjection  
		{
			get{ return emop["DeployedComputer"];}
		}
				
         
        public IComposableProjection OperatingSystemProjection
		{
			get{ return emop["OperatingSystem"].FirstOrDefault(); }
		}    
            
		public string OperatingSystemName  
		{
			get{
                var projection = emop["OperatingSystem"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddOperatingSystem(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = Microsoft_Windows_ComputerClass.Relationships.Microsoft_Windows_ComputerHostsOperatingSystem;
					
			emop.Add(value, endPoint.Target);
		}
		
		public void AddNetworkAdapter(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = Microsoft_Windows_ComputerClass.Relationships.Microsoft_Windows_ComputerHostsLogicalDevice;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> NetworkAdapterProjection  
		{
			get{ return emop["LogicalDevice"];}
		}
				
		public void AddProcessor(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = Microsoft_Windows_ComputerClass.Relationships.Microsoft_Windows_ComputerHostsLogicalDevice;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> ProcessorProjection  
		{
			get{ return emop["LogicalDevice"];}
		}
				
		public void AddPhysicalDisk(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = Microsoft_Windows_ComputerClass.Relationships.Microsoft_Windows_ComputerHostsLogicalDevice;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> PhysicalDiskProjection  
		{
			get{ return emop["LogicalDevice"];}
		}
				
		public void AddLogicalDisk(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = Microsoft_Windows_ComputerClass.Relationships.Microsoft_Windows_ComputerHostsLogicalDevice;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> LogicalDiskProjection  
		{
			get{ return emop["LogicalDevice"];}
		}
				
         
        public IComposableProjection PrimaryUserProjection
		{
			get{ return emop["UsedBy"].FirstOrDefault(); }
		}    
            
		public string PrimaryUserName  
		{
			get{
                var projection = emop["UsedBy"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddPrimaryUser(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = Microsoft_Windows_ComputerClass.Relationships.System_ComputerPrimaryUser;
					
			emop.Add(value, endPoint.Target);
		}
		
         
        public IComposableProjection CustodianProjection
		{
			get{ return emop["OwnedBy"].FirstOrDefault(); }
		}    
            
		public string CustodianName  
		{
			get{
                var projection = emop["OwnedBy"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddCustodian(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = Microsoft_Windows_ComputerClass.Relationships.System_ConfigItemOwnedByUser;
					
			emop.Add(value, endPoint.Target);
		}
		
		public void AddImpactedWorkItem(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = Microsoft_Windows_ComputerClass.Relationships.System_WorkItemRelatesToConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> ImpactedWorkItemProjection  
		{
			get{ return emop["RelatesToWorkItem"];}
		}
				
		public void AddRelatedWorkItem(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = Microsoft_Windows_ComputerClass.Relationships.System_WorkItemAboutConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> RelatedWorkItemProjection  
		{
			get{ return emop["IsAboutConfigItems"];}
		}
				
		public void AddFileAttachment(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = Microsoft_Windows_ComputerClass.Relationships.System_ConfigItemHasFileAttachment;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> FileAttachmentProjection  
		{
			get{ return emop["FileAttachment"];}
		}
				
		public void AddRelatedConfigItem(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = Microsoft_Windows_ComputerClass.Relationships.System_ConfigItemRelatesToConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> RelatedConfigItemProjection  
		{
			get{ return emop["TargetConfigItem"];}
		}
				
		public void AddRelatedConfigItemSource(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = Microsoft_Windows_ComputerClass.Relationships.System_ConfigItemRelatesToConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> RelatedConfigItemSourceProjection  
		{
			get{ return emop["SourceConfigItem"];}
		}
				
		public void AddRelatedKnowledgeArticles(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = Microsoft_Windows_ComputerClass.Relationships.System_EntityLinksToKnowledgeDocument;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> RelatedKnowledgeArticlesProjection  
		{
			get{ return emop["KnowledgeDocument"];}
		}
				
#endregion
		}// end tp class
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: ServiceManager.ConfigurationManagement.Library
			public class System_User_Preferences_Projection  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public System_User_Preferences_Projection(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("490ab845-b14c-1d91-c39f-bb9e8a350933");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("19110da0-0b5d-6c48-085f-8db74d662da4");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static System_User_Preferences_Projection Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, System_Domain_UserClass.GetManagementPackClass());	
					return new  System_User_Preferences_Projection(p);
				}
								
				public static System_User_Preferences_Projection Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.User']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("490ab845-b14c-1d91-c39f-bb9e8a350933"), property, id);
					return  new System_User_Preferences_Projection(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.Enum	
			Id 			: a6b7ea8d-9423-8529-cb21-87ac1a21fdcb
			Description : Asset status	
*/
		public ManagementPackEnumeration AssetStatus
		{	
			set {@Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")].Value = value;}
			get
			{
				if(@Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: d1aded93-3cd9-35e2-d4f4-8b4d0d37409c
			Description : Business Phone	
*/
		public string BusinessPhone
		{	
			set {@Object[new Guid("d1aded93-3cd9-35e2-d4f4-8b4d0d37409c")].Value = value;}
			get {
                    if(@Object[new Guid("d1aded93-3cd9-35e2-d4f4-8b4d0d37409c")]==null || @Object[new Guid("d1aded93-3cd9-35e2-d4f4-8b4d0d37409c")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d1aded93-3cd9-35e2-d4f4-8b4d0d37409c")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 51d9d560-1c1a-058e-4307-4e5302132612
			Description : Business Phone2	
*/
		public string BusinessPhone2
		{	
			set {@Object[new Guid("51d9d560-1c1a-058e-4307-4e5302132612")].Value = value;}
			get {
                    if(@Object[new Guid("51d9d560-1c1a-058e-4307-4e5302132612")]==null || @Object[new Guid("51d9d560-1c1a-058e-4307-4e5302132612")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("51d9d560-1c1a-058e-4307-4e5302132612")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 42b2a214-7ccc-b734-f5a7-ee7b0bb8b371
			Description : City	
*/
		public string City
		{	
			set {@Object[new Guid("42b2a214-7ccc-b734-f5a7-ee7b0bb8b371")].Value = value;}
			get {
                    if(@Object[new Guid("42b2a214-7ccc-b734-f5a7-ee7b0bb8b371")]==null || @Object[new Guid("42b2a214-7ccc-b734-f5a7-ee7b0bb8b371")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("42b2a214-7ccc-b734-f5a7-ee7b0bb8b371")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 7b3a602c-c9e3-766e-840d-a2099f5a51ad
			Description : Company	
*/
		public string Company
		{	
			set {@Object[new Guid("7b3a602c-c9e3-766e-840d-a2099f5a51ad")].Value = value;}
			get {
                    if(@Object[new Guid("7b3a602c-c9e3-766e-840d-a2099f5a51ad")]==null || @Object[new Guid("7b3a602c-c9e3-766e-840d-a2099f5a51ad")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("7b3a602c-c9e3-766e-840d-a2099f5a51ad")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 9c5cfe85-8752-d66e-c08b-419776f9c0f0
			Description : Country	
*/
		public string Country
		{	
			set {@Object[new Guid("9c5cfe85-8752-d66e-c08b-419776f9c0f0")].Value = value;}
			get {
                    if(@Object[new Guid("9c5cfe85-8752-d66e-c08b-419776f9c0f0")]==null || @Object[new Guid("9c5cfe85-8752-d66e-c08b-419776f9c0f0")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("9c5cfe85-8752-d66e-c08b-419776f9c0f0")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 22405812-2d6d-e429-110c-2d2d8f9518df
			Description : Department	
*/
		public string Department
		{	
			set {@Object[new Guid("22405812-2d6d-e429-110c-2d2d8f9518df")].Value = value;}
			get {
                    if(@Object[new Guid("22405812-2d6d-e429-110c-2d2d8f9518df")]==null || @Object[new Guid("22405812-2d6d-e429-110c-2d2d8f9518df")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("22405812-2d6d-e429-110c-2d2d8f9518df")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 0fbe2585-ca40-c136-2366-153e2e9f289b
			Description : Domain	
*/
		public string Domain
		{	
			set {@Object[new Guid("0fbe2585-ca40-c136-2366-153e2e9f289b")].Value = value;}
			get {
                    if(@Object[new Guid("0fbe2585-ca40-c136-2366-153e2e9f289b")]==null || @Object[new Guid("0fbe2585-ca40-c136-2366-153e2e9f289b")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("0fbe2585-ca40-c136-2366-153e2e9f289b")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d56f368d-2e48-e4be-f4eb-f82744879663
			Description : Employee Identifier	
*/
		public string EmployeeId
		{	
			set {@Object[new Guid("d56f368d-2e48-e4be-f4eb-f82744879663")].Value = value;}
			get {
                    if(@Object[new Guid("d56f368d-2e48-e4be-f4eb-f82744879663")]==null || @Object[new Guid("d56f368d-2e48-e4be-f4eb-f82744879663")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d56f368d-2e48-e4be-f4eb-f82744879663")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d962f04f-1429-a910-fa7b-ac8444645aee
			Description : Fax	
*/
		public string Fax
		{	
			set {@Object[new Guid("d962f04f-1429-a910-fa7b-ac8444645aee")].Value = value;}
			get {
                    if(@Object[new Guid("d962f04f-1429-a910-fa7b-ac8444645aee")]==null || @Object[new Guid("d962f04f-1429-a910-fa7b-ac8444645aee")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d962f04f-1429-a910-fa7b-ac8444645aee")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: a1dd0787-f6b9-5131-3f43-f356ca2bb163
			Description : First Name	
*/
		public string FirstName
		{	
			set {@Object[new Guid("a1dd0787-f6b9-5131-3f43-f356ca2bb163")].Value = value;}
			get {
                    if(@Object[new Guid("a1dd0787-f6b9-5131-3f43-f356ca2bb163")]==null || @Object[new Guid("a1dd0787-f6b9-5131-3f43-f356ca2bb163")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("a1dd0787-f6b9-5131-3f43-f356ca2bb163")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: b22c0740-cdcc-4e9d-9ad2-d97b096f8330
			Description : Home Phone	
*/
		public string HomePhone
		{	
			set {@Object[new Guid("b22c0740-cdcc-4e9d-9ad2-d97b096f8330")].Value = value;}
			get {
                    if(@Object[new Guid("b22c0740-cdcc-4e9d-9ad2-d97b096f8330")]==null || @Object[new Guid("b22c0740-cdcc-4e9d-9ad2-d97b096f8330")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("b22c0740-cdcc-4e9d-9ad2-d97b096f8330")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 1e319ed0-84e5-98d1-b4cb-e62b524d81b1
			Description : Home Phone2	
*/
		public string HomePhone2
		{	
			set {@Object[new Guid("1e319ed0-84e5-98d1-b4cb-e62b524d81b1")].Value = value;}
			get {
                    if(@Object[new Guid("1e319ed0-84e5-98d1-b4cb-e62b524d81b1")]==null || @Object[new Guid("1e319ed0-84e5-98d1-b4cb-e62b524d81b1")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("1e319ed0-84e5-98d1-b4cb-e62b524d81b1")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 7b32dd73-f649-f288-f8a1-13b16481eca6
			Description : Initials	
*/
		public string Initials
		{	
			set {@Object[new Guid("7b32dd73-f649-f288-f8a1-13b16481eca6")].Value = value;}
			get {
                    if(@Object[new Guid("7b32dd73-f649-f288-f8a1-13b16481eca6")]==null || @Object[new Guid("7b32dd73-f649-f288-f8a1-13b16481eca6")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("7b32dd73-f649-f288-f8a1-13b16481eca6")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 2cde06de-0ad2-ea7a-50b0-627d0a2337df
			Description : Last Name	
*/
		public string LastName
		{	
			set {@Object[new Guid("2cde06de-0ad2-ea7a-50b0-627d0a2337df")].Value = value;}
			get {
                    if(@Object[new Guid("2cde06de-0ad2-ea7a-50b0-627d0a2337df")]==null || @Object[new Guid("2cde06de-0ad2-ea7a-50b0-627d0a2337df")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("2cde06de-0ad2-ea7a-50b0-627d0a2337df")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 79a97a95-f92d-eb97-e9e9-d4b9c51e0ab5
			Description : Mobile	
*/
		public string Mobile
		{	
			set {@Object[new Guid("79a97a95-f92d-eb97-e9e9-d4b9c51e0ab5")].Value = value;}
			get {
                    if(@Object[new Guid("79a97a95-f92d-eb97-e9e9-d4b9c51e0ab5")]==null || @Object[new Guid("79a97a95-f92d-eb97-e9e9-d4b9c51e0ab5")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("79a97a95-f92d-eb97-e9e9-d4b9c51e0ab5")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 55124dce-750d-bd54-4b92-d1fddf99adec
			Description : Notes	
*/
		public string Notes
		{	
			set {@Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value = value;}
			get {
                    if(@Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")]==null || @Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 11927069-6957-dfcf-a277-08a784221325
			Description : Object status	
*/
		public ManagementPackEnumeration ObjectStatus
		{	
			set {@Object[new Guid("11927069-6957-dfcf-a277-08a784221325")].Value = value;}
			get
			{
				if(@Object[new Guid("11927069-6957-dfcf-a277-08a784221325")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("11927069-6957-dfcf-a277-08a784221325")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 6021c777-23dd-c73a-3465-b97e00d7a1ba
			Description : Office	
*/
		public string Office
		{	
			set {@Object[new Guid("6021c777-23dd-c73a-3465-b97e00d7a1ba")].Value = value;}
			get {
                    if(@Object[new Guid("6021c777-23dd-c73a-3465-b97e00d7a1ba")]==null || @Object[new Guid("6021c777-23dd-c73a-3465-b97e00d7a1ba")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("6021c777-23dd-c73a-3465-b97e00d7a1ba")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d72232bd-85e4-3e3d-1f33-6bebf3b7606a
			Description : Pager	
*/
		public string Pager
		{	
			set {@Object[new Guid("d72232bd-85e4-3e3d-1f33-6bebf3b7606a")].Value = value;}
			get {
                    if(@Object[new Guid("d72232bd-85e4-3e3d-1f33-6bebf3b7606a")]==null || @Object[new Guid("d72232bd-85e4-3e3d-1f33-6bebf3b7606a")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d72232bd-85e4-3e3d-1f33-6bebf3b7606a")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: ed79d5a6-19ff-6c72-7204-1b7b26677f17
			Description : State	
*/
		public string State
		{	
			set {@Object[new Guid("ed79d5a6-19ff-6c72-7204-1b7b26677f17")].Value = value;}
			get {
                    if(@Object[new Guid("ed79d5a6-19ff-6c72-7204-1b7b26677f17")]==null || @Object[new Guid("ed79d5a6-19ff-6c72-7204-1b7b26677f17")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("ed79d5a6-19ff-6c72-7204-1b7b26677f17")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 3c923ab8-1f93-bd52-07a9-df59fd78bd1f
			Description : Street Address	
*/
		public string StreetAddress
		{	
			set {@Object[new Guid("3c923ab8-1f93-bd52-07a9-df59fd78bd1f")].Value = value;}
			get {
                    if(@Object[new Guid("3c923ab8-1f93-bd52-07a9-df59fd78bd1f")]==null || @Object[new Guid("3c923ab8-1f93-bd52-07a9-df59fd78bd1f")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("3c923ab8-1f93-bd52-07a9-df59fd78bd1f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 9010dfd3-8bce-eac9-6657-d19130e07bfa
			Description : Title	
*/
		public string Title
		{	
			set {@Object[new Guid("9010dfd3-8bce-eac9-6657-d19130e07bfa")].Value = value;}
			get {
                    if(@Object[new Guid("9010dfd3-8bce-eac9-6657-d19130e07bfa")]==null || @Object[new Guid("9010dfd3-8bce-eac9-6657-d19130e07bfa")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("9010dfd3-8bce-eac9-6657-d19130e07bfa")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 3217af5a-b135-a850-0562-be3e89da6d1a
			Description : User Name	
*/
		public string UserName
		{	
			set {@Object[new Guid("3217af5a-b135-a850-0562-be3e89da6d1a")].Value = value;}
			get {
                    if(@Object[new Guid("3217af5a-b135-a850-0562-be3e89da6d1a")]==null || @Object[new Guid("3217af5a-b135-a850-0562-be3e89da6d1a")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("3217af5a-b135-a850-0562-be3e89da6d1a")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 584266bf-a344-f323-a15b-4a761aecd867
			Description : Zip	
*/
		public string Zip
		{	
			set {@Object[new Guid("584266bf-a344-f323-a15b-4a761aecd867")].Value = value;}
			get {
                    if(@Object[new Guid("584266bf-a344-f323-a15b-4a761aecd867")]==null || @Object[new Guid("584266bf-a344-f323-a15b-4a761aecd867")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("584266bf-a344-f323-a15b-4a761aecd867")].Value; 
                    
                }		
			
		}
#endregion
#region Relationships
		public void AddNotification(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_Domain_UserClass.Relationships.System_UserHasPreference;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> NotificationProjection  
		{
			get{ return emop["Preference"];}
		}
				
		public void AddPreference(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_Domain_UserClass.Relationships.System_UserHasPreference;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> PreferenceProjection  
		{
			get{ return emop["Preference"];}
		}
				
#endregion
		}// end tp class
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: ServiceManager.ConfigurationManagement.Library
			public class Microsoft_Windows_Printer_ProjectionType  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public Microsoft_Windows_Printer_ProjectionType(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("65e9c5e0-83a2-ed58-f57d-d912bf006ed4");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("19110da0-0b5d-6c48-085f-8db74d662da4");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static Microsoft_Windows_Printer_ProjectionType Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, Microsoft_AD_PrinterClass.GetManagementPackClass());	
					return new  Microsoft_Windows_Printer_ProjectionType(p);
				}
								
				public static Microsoft_Windows_Printer_ProjectionType Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.Printer']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("65e9c5e0-83a2-ed58-f57d-d912bf006ed4"), property, id);
					return  new Microsoft_Windows_Printer_ProjectionType(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.String	
			Id 			: f7b94e15-e05c-62fe-2778-4d4bbd044caf
			Description : Asset Number	
*/
		public string AssetNumber
		{	
			set {@Object[new Guid("f7b94e15-e05c-62fe-2778-4d4bbd044caf")].Value = value;}
			get {
                    if(@Object[new Guid("f7b94e15-e05c-62fe-2778-4d4bbd044caf")]==null || @Object[new Guid("f7b94e15-e05c-62fe-2778-4d4bbd044caf")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("f7b94e15-e05c-62fe-2778-4d4bbd044caf")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: a6b7ea8d-9423-8529-cb21-87ac1a21fdcb
			Description : Asset status	
*/
		public ManagementPackEnumeration AssetStatus
		{	
			set {@Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")].Value = value;}
			get
			{
				if(@Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 3469e6c9-6234-64a5-5a7f-44f01a1f4296
			Description : Canonical Name	
*/
		public string CanonicalName
		{	
			set {@Object[new Guid("3469e6c9-6234-64a5-5a7f-44f01a1f4296")].Value = value;}
			get {
                    if(@Object[new Guid("3469e6c9-6234-64a5-5a7f-44f01a1f4296")]==null || @Object[new Guid("3469e6c9-6234-64a5-5a7f-44f01a1f4296")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("3469e6c9-6234-64a5-5a7f-44f01a1f4296")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d26a8552-8909-4f15-5333-6936c3c7fb1d
			Description : Description	
*/
		public string Description
		{	
			set {@Object[new Guid("d26a8552-8909-4f15-5333-6936c3c7fb1d")].Value = value;}
			get {
                    if(@Object[new Guid("d26a8552-8909-4f15-5333-6936c3c7fb1d")]==null || @Object[new Guid("d26a8552-8909-4f15-5333-6936c3c7fb1d")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d26a8552-8909-4f15-5333-6936c3c7fb1d")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 62feaa3e-a183-924f-3448-e5051349869f
			Description : Distinguished Name	
*/
		public string DistinguishedName
		{	
			set {@Object[new Guid("62feaa3e-a183-924f-3448-e5051349869f")].Value = value;}
			get {
                    if(@Object[new Guid("62feaa3e-a183-924f-3448-e5051349869f")]==null || @Object[new Guid("62feaa3e-a183-924f-3448-e5051349869f")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("62feaa3e-a183-924f-3448-e5051349869f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 6dbb6006-a37e-fea4-914c-bc4070be8133
			Description : Driver Name	
*/
		public string DriverName
		{	
			set {@Object[new Guid("6dbb6006-a37e-fea4-914c-bc4070be8133")].Value = value;}
			get {
                    if(@Object[new Guid("6dbb6006-a37e-fea4-914c-bc4070be8133")]==null || @Object[new Guid("6dbb6006-a37e-fea4-914c-bc4070be8133")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("6dbb6006-a37e-fea4-914c-bc4070be8133")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 3d979651-0304-f34c-98d7-a5295c365167
			Description : Driver Version	
*/
		public string DriverVersion
		{	
			set {@Object[new Guid("3d979651-0304-f34c-98d7-a5295c365167")].Value = value;}
			get {
                    if(@Object[new Guid("3d979651-0304-f34c-98d7-a5295c365167")]==null || @Object[new Guid("3d979651-0304-f34c-98d7-a5295c365167")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("3d979651-0304-f34c-98d7-a5295c365167")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 869bcaa8-9281-2ff1-353b-517d5045d59f
			Description : Full Name	
*/
		public string Fullname
		{	
			set {@Object[new Guid("869bcaa8-9281-2ff1-353b-517d5045d59f")].Value = value;}
			get {
                    if(@Object[new Guid("869bcaa8-9281-2ff1-353b-517d5045d59f")]==null || @Object[new Guid("869bcaa8-9281-2ff1-353b-517d5045d59f")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("869bcaa8-9281-2ff1-353b-517d5045d59f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: 0f6a2a1c-aa34-54e9-c054-34bf70de4ebd
			Description : Is Deleted	
*/
		public bool? IsDeleted
		{	
			set {@Object[new Guid("0f6a2a1c-aa34-54e9-c054-34bf70de4ebd")].Value = value;}
			get
			{
				if(@Object[new Guid("0f6a2a1c-aa34-54e9-c054-34bf70de4ebd")] != null)
				return  (bool?) @Object[new Guid("0f6a2a1c-aa34-54e9-c054-34bf70de4ebd")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 3274b2b3-8a62-552f-5c16-9c6e175f5aba
			Description : Keywords	
*/
		public string Keywords
		{	
			set {@Object[new Guid("3274b2b3-8a62-552f-5c16-9c6e175f5aba")].Value = value;}
			get {
                    if(@Object[new Guid("3274b2b3-8a62-552f-5c16-9c6e175f5aba")]==null || @Object[new Guid("3274b2b3-8a62-552f-5c16-9c6e175f5aba")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("3274b2b3-8a62-552f-5c16-9c6e175f5aba")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 93682513-cc0e-d312-488e-e88fc6d1122d
			Description : Location	
*/
		public string Location
		{	
			set {@Object[new Guid("93682513-cc0e-d312-488e-e88fc6d1122d")].Value = value;}
			get {
                    if(@Object[new Guid("93682513-cc0e-d312-488e-e88fc6d1122d")]==null || @Object[new Guid("93682513-cc0e-d312-488e-e88fc6d1122d")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("93682513-cc0e-d312-488e-e88fc6d1122d")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: e61c42ed-e5a8-10f9-7b05-6a1ea7d4f246
			Description : Managed By	
*/
		public string ManagedBy
		{	
			set {@Object[new Guid("e61c42ed-e5a8-10f9-7b05-6a1ea7d4f246")].Value = value;}
			get {
                    if(@Object[new Guid("e61c42ed-e5a8-10f9-7b05-6a1ea7d4f246")]==null || @Object[new Guid("e61c42ed-e5a8-10f9-7b05-6a1ea7d4f246")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("e61c42ed-e5a8-10f9-7b05-6a1ea7d4f246")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: 96d8a99a-7cbf-6823-e181-059fd3b1645f
			Description : Modify Time Stamp	
*/
		public DateTime? ModifyTimeStamp
		{	
			set {@Object[new Guid("96d8a99a-7cbf-6823-e181-059fd3b1645f")].Value = value;}
			get {
                    if(@Object[new Guid("96d8a99a-7cbf-6823-e181-059fd3b1645f")]==null || @Object[new Guid("96d8a99a-7cbf-6823-e181-059fd3b1645f")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("96d8a99a-7cbf-6823-e181-059fd3b1645f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 55124dce-750d-bd54-4b92-d1fddf99adec
			Description : Notes	
*/
		public string Notes
		{	
			set {@Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value = value;}
			get {
                    if(@Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")]==null || @Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 11927069-6957-dfcf-a277-08a784221325
			Description : Object status	
*/
		public ManagementPackEnumeration ObjectStatus
		{	
			set {@Object[new Guid("11927069-6957-dfcf-a277-08a784221325")].Value = value;}
			get
			{
				if(@Object[new Guid("11927069-6957-dfcf-a277-08a784221325")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("11927069-6957-dfcf-a277-08a784221325")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 1f9b21d2-75b2-281c-2d16-a60b97210d28
			Description : Physical Location Object	
*/
		public string PhysicalLocationObject
		{	
			set {@Object[new Guid("1f9b21d2-75b2-281c-2d16-a60b97210d28")].Value = value;}
			get {
                    if(@Object[new Guid("1f9b21d2-75b2-281c-2d16-a60b97210d28")]==null || @Object[new Guid("1f9b21d2-75b2-281c-2d16-a60b97210d28")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("1f9b21d2-75b2-281c-2d16-a60b97210d28")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: df3083bd-3970-b4a6-0a96-8f0afd6f1353
			Description : Port Name	
*/
		public string PortName
		{	
			set {@Object[new Guid("df3083bd-3970-b4a6-0a96-8f0afd6f1353")].Value = value;}
			get {
                    if(@Object[new Guid("df3083bd-3970-b4a6-0a96-8f0afd6f1353")]==null || @Object[new Guid("df3083bd-3970-b4a6-0a96-8f0afd6f1353")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("df3083bd-3970-b4a6-0a96-8f0afd6f1353")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: e07395c9-62ae-97ea-311e-b5c843d7adb0
			Description : Print Bin Names	
*/
		public string PrintBinNames
		{	
			set {@Object[new Guid("e07395c9-62ae-97ea-311e-b5c843d7adb0")].Value = value;}
			get {
                    if(@Object[new Guid("e07395c9-62ae-97ea-311e-b5c843d7adb0")]==null || @Object[new Guid("e07395c9-62ae-97ea-311e-b5c843d7adb0")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("e07395c9-62ae-97ea-311e-b5c843d7adb0")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 25378519-616a-f21c-7265-3549117c1dd9
			Description : Print Collate	
*/
		public string PrintCollate
		{	
			set {@Object[new Guid("25378519-616a-f21c-7265-3549117c1dd9")].Value = value;}
			get {
                    if(@Object[new Guid("25378519-616a-f21c-7265-3549117c1dd9")]==null || @Object[new Guid("25378519-616a-f21c-7265-3549117c1dd9")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("25378519-616a-f21c-7265-3549117c1dd9")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: c132aaa3-6203-db0d-b0bb-02332198fad7
			Description : Print Color	
*/
		public string PrintColor
		{	
			set {@Object[new Guid("c132aaa3-6203-db0d-b0bb-02332198fad7")].Value = value;}
			get {
                    if(@Object[new Guid("c132aaa3-6203-db0d-b0bb-02332198fad7")]==null || @Object[new Guid("c132aaa3-6203-db0d-b0bb-02332198fad7")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("c132aaa3-6203-db0d-b0bb-02332198fad7")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d60a266d-4b9d-c625-4850-e99608ad3e04
			Description : Print Duplex Supported	
*/
		public string PrintDuplexSupported
		{	
			set {@Object[new Guid("d60a266d-4b9d-c625-4850-e99608ad3e04")].Value = value;}
			get {
                    if(@Object[new Guid("d60a266d-4b9d-c625-4850-e99608ad3e04")]==null || @Object[new Guid("d60a266d-4b9d-c625-4850-e99608ad3e04")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d60a266d-4b9d-c625-4850-e99608ad3e04")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 8f48898e-12f1-8c29-a70d-fe96c38fb712
			Description : Printer Name	
*/
		public string PrinterName
		{	
			set {@Object[new Guid("8f48898e-12f1-8c29-a70d-fe96c38fb712")].Value = value;}
			get {
                    if(@Object[new Guid("8f48898e-12f1-8c29-a70d-fe96c38fb712")]==null || @Object[new Guid("8f48898e-12f1-8c29-a70d-fe96c38fb712")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("8f48898e-12f1-8c29-a70d-fe96c38fb712")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: af1756b9-6c96-0b86-b513-eaabb527b36d
			Description : Print Keep Printed Jobs	
*/
		public string PrintKeepPrintedJobs
		{	
			set {@Object[new Guid("af1756b9-6c96-0b86-b513-eaabb527b36d")].Value = value;}
			get {
                    if(@Object[new Guid("af1756b9-6c96-0b86-b513-eaabb527b36d")]==null || @Object[new Guid("af1756b9-6c96-0b86-b513-eaabb527b36d")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("af1756b9-6c96-0b86-b513-eaabb527b36d")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 129ac218-a27a-0de5-4737-1599819f3153
			Description : Print MAC Address	
*/
		public string PrintMACAddress
		{	
			set {@Object[new Guid("129ac218-a27a-0de5-4737-1599819f3153")].Value = value;}
			get {
                    if(@Object[new Guid("129ac218-a27a-0de5-4737-1599819f3153")]==null || @Object[new Guid("129ac218-a27a-0de5-4737-1599819f3153")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("129ac218-a27a-0de5-4737-1599819f3153")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Int32	
			Id 			: 3054e38f-c4a9-2d02-224e-352c931e16bb
			Description : Print Max Resolution Supported	
*/
		public int PrintMaxResolutionSupported
		{	
			set {@Object[new Guid("3054e38f-c4a9-2d02-224e-352c931e16bb")].Value = value;}
			get {
                    if(@Object[new Guid("3054e38f-c4a9-2d02-224e-352c931e16bb")]==null || @Object[new Guid("3054e38f-c4a9-2d02-224e-352c931e16bb")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("3054e38f-c4a9-2d02-224e-352c931e16bb")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Int32	
			Id 			: 14303a5e-91ab-f233-2390-e77fb84aea7b
			Description : Print Max XExtent	
*/
		public int PrintMaxXExtent
		{	
			set {@Object[new Guid("14303a5e-91ab-f233-2390-e77fb84aea7b")].Value = value;}
			get {
                    if(@Object[new Guid("14303a5e-91ab-f233-2390-e77fb84aea7b")]==null || @Object[new Guid("14303a5e-91ab-f233-2390-e77fb84aea7b")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("14303a5e-91ab-f233-2390-e77fb84aea7b")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: e87227c1-7b56-0260-c700-68b741df6ead
			Description : Print Media Ready	
*/
		public string PrintMediaReady
		{	
			set {@Object[new Guid("e87227c1-7b56-0260-c700-68b741df6ead")].Value = value;}
			get {
                    if(@Object[new Guid("e87227c1-7b56-0260-c700-68b741df6ead")]==null || @Object[new Guid("e87227c1-7b56-0260-c700-68b741df6ead")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("e87227c1-7b56-0260-c700-68b741df6ead")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: f1d618e4-d526-8602-1361-af36101bd356
			Description : Print Media Supported	
*/
		public string PrintMediaSupported
		{	
			set {@Object[new Guid("f1d618e4-d526-8602-1361-af36101bd356")].Value = value;}
			get {
                    if(@Object[new Guid("f1d618e4-d526-8602-1361-af36101bd356")]==null || @Object[new Guid("f1d618e4-d526-8602-1361-af36101bd356")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("f1d618e4-d526-8602-1361-af36101bd356")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 08154ac1-3009-1423-2c58-08d164e617f0
			Description : Print Memory	
*/
		public string PrintMemory
		{	
			set {@Object[new Guid("08154ac1-3009-1423-2c58-08d164e617f0")].Value = value;}
			get {
                    if(@Object[new Guid("08154ac1-3009-1423-2c58-08d164e617f0")]==null || @Object[new Guid("08154ac1-3009-1423-2c58-08d164e617f0")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("08154ac1-3009-1423-2c58-08d164e617f0")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 7b2a8862-582a-499d-bf99-041e62abd2a2
			Description : Print Network Address	
*/
		public string PrintNetworkAddress
		{	
			set {@Object[new Guid("7b2a8862-582a-499d-bf99-041e62abd2a2")].Value = value;}
			get {
                    if(@Object[new Guid("7b2a8862-582a-499d-bf99-041e62abd2a2")]==null || @Object[new Guid("7b2a8862-582a-499d-bf99-041e62abd2a2")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("7b2a8862-582a-499d-bf99-041e62abd2a2")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: ba10fb83-9c59-735f-d09a-6537b103c93e
			Description : Print Notify	
*/
		public string PrintNotify
		{	
			set {@Object[new Guid("ba10fb83-9c59-735f-d09a-6537b103c93e")].Value = value;}
			get {
                    if(@Object[new Guid("ba10fb83-9c59-735f-d09a-6537b103c93e")]==null || @Object[new Guid("ba10fb83-9c59-735f-d09a-6537b103c93e")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("ba10fb83-9c59-735f-d09a-6537b103c93e")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: efec5a22-146f-09bb-1b1b-99364a7bdd1f
			Description : Print Owner	
*/
		public string PrintOwner
		{	
			set {@Object[new Guid("efec5a22-146f-09bb-1b1b-99364a7bdd1f")].Value = value;}
			get {
                    if(@Object[new Guid("efec5a22-146f-09bb-1b1b-99364a7bdd1f")]==null || @Object[new Guid("efec5a22-146f-09bb-1b1b-99364a7bdd1f")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("efec5a22-146f-09bb-1b1b-99364a7bdd1f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Int32	
			Id 			: 49ff3e93-c21d-4360-c2a7-ec66ec1eafb9
			Description : Print Pages Per Minute	
*/
		public int PrintPagesPerMinute
		{	
			set {@Object[new Guid("49ff3e93-c21d-4360-c2a7-ec66ec1eafb9")].Value = value;}
			get {
                    if(@Object[new Guid("49ff3e93-c21d-4360-c2a7-ec66ec1eafb9")]==null || @Object[new Guid("49ff3e93-c21d-4360-c2a7-ec66ec1eafb9")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("49ff3e93-c21d-4360-c2a7-ec66ec1eafb9")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Int32	
			Id 			: e263f875-7990-b709-cdf0-ba77a1c26219
			Description : Print Rate	
*/
		public int PrintRate
		{	
			set {@Object[new Guid("e263f875-7990-b709-cdf0-ba77a1c26219")].Value = value;}
			get {
                    if(@Object[new Guid("e263f875-7990-b709-cdf0-ba77a1c26219")]==null || @Object[new Guid("e263f875-7990-b709-cdf0-ba77a1c26219")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("e263f875-7990-b709-cdf0-ba77a1c26219")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: b2804c7e-2dc5-b733-19af-63390bc75ac9
			Description : Print Rate Unit	
*/
		public string PrintRateUnit
		{	
			set {@Object[new Guid("b2804c7e-2dc5-b733-19af-63390bc75ac9")].Value = value;}
			get {
                    if(@Object[new Guid("b2804c7e-2dc5-b733-19af-63390bc75ac9")]==null || @Object[new Guid("b2804c7e-2dc5-b733-19af-63390bc75ac9")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("b2804c7e-2dc5-b733-19af-63390bc75ac9")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: dcd4aeef-7386-9b70-f9a8-24a48b8fb020
			Description : Print Share Name	
*/
		public string PrintShareName
		{	
			set {@Object[new Guid("dcd4aeef-7386-9b70-f9a8-24a48b8fb020")].Value = value;}
			get {
                    if(@Object[new Guid("dcd4aeef-7386-9b70-f9a8-24a48b8fb020")]==null || @Object[new Guid("dcd4aeef-7386-9b70-f9a8-24a48b8fb020")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("dcd4aeef-7386-9b70-f9a8-24a48b8fb020")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 21a6298d-53da-fa5b-6919-35d961f58b84
			Description : Print Stapling Supported	
*/
		public string PrintStaplingSupported
		{	
			set {@Object[new Guid("21a6298d-53da-fa5b-6919-35d961f58b84")].Value = value;}
			get {
                    if(@Object[new Guid("21a6298d-53da-fa5b-6919-35d961f58b84")]==null || @Object[new Guid("21a6298d-53da-fa5b-6919-35d961f58b84")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("21a6298d-53da-fa5b-6919-35d961f58b84")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: a312fcfe-9428-8ff5-1e9d-c6d298b85666
			Description : Server Name	
*/
		public string ServerName
		{	
			set {@Object[new Guid("a312fcfe-9428-8ff5-1e9d-c6d298b85666")].Value = value;}
			get {
                    if(@Object[new Guid("a312fcfe-9428-8ff5-1e9d-c6d298b85666")]==null || @Object[new Guid("a312fcfe-9428-8ff5-1e9d-c6d298b85666")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("a312fcfe-9428-8ff5-1e9d-c6d298b85666")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 41779a96-123c-7e8d-bb89-8de98fea141e
			Description : Short Server Name	
*/
		public string ShortServerName
		{	
			set {@Object[new Guid("41779a96-123c-7e8d-bb89-8de98fea141e")].Value = value;}
			get {
                    if(@Object[new Guid("41779a96-123c-7e8d-bb89-8de98fea141e")]==null || @Object[new Guid("41779a96-123c-7e8d-bb89-8de98fea141e")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("41779a96-123c-7e8d-bb89-8de98fea141e")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: ff05ca83-bfd7-2de4-586d-08b8fcbeb977
			Description : UNC Name	
*/
		public string UNCName
		{	
			set {@Object[new Guid("ff05ca83-bfd7-2de4-586d-08b8fcbeb977")].Value = value;}
			get {
                    if(@Object[new Guid("ff05ca83-bfd7-2de4-586d-08b8fcbeb977")]==null || @Object[new Guid("ff05ca83-bfd7-2de4-586d-08b8fcbeb977")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("ff05ca83-bfd7-2de4-586d-08b8fcbeb977")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 351444b0-7efb-9772-8450-04b583fb07d5
			Description : URL	
*/
		public string Url
		{	
			set {@Object[new Guid("351444b0-7efb-9772-8450-04b583fb07d5")].Value = value;}
			get {
                    if(@Object[new Guid("351444b0-7efb-9772-8450-04b583fb07d5")]==null || @Object[new Guid("351444b0-7efb-9772-8450-04b583fb07d5")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("351444b0-7efb-9772-8450-04b583fb07d5")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: faf56106-adc7-9fd4-522d-1ccebeb3a86e
			Description : Version Number	
*/
		public string VersionNumber
		{	
			set {@Object[new Guid("faf56106-adc7-9fd4-522d-1ccebeb3a86e")].Value = value;}
			get {
                    if(@Object[new Guid("faf56106-adc7-9fd4-522d-1ccebeb3a86e")]==null || @Object[new Guid("faf56106-adc7-9fd4-522d-1ccebeb3a86e")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("faf56106-adc7-9fd4-522d-1ccebeb3a86e")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: 21a242fe-d395-b68e-fe00-13c86f86a90a
			Description : When Changed	
*/
		public DateTime? WhenChanged
		{	
			set {@Object[new Guid("21a242fe-d395-b68e-fe00-13c86f86a90a")].Value = value;}
			get {
                    if(@Object[new Guid("21a242fe-d395-b68e-fe00-13c86f86a90a")]==null || @Object[new Guid("21a242fe-d395-b68e-fe00-13c86f86a90a")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("21a242fe-d395-b68e-fe00-13c86f86a90a")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 95552415-778d-1865-f287-91601a81ea2c
			Description : Web Page	
*/
		public string WWWHomePage
		{	
			set {@Object[new Guid("95552415-778d-1865-f287-91601a81ea2c")].Value = value;}
			get {
                    if(@Object[new Guid("95552415-778d-1865-f287-91601a81ea2c")]==null || @Object[new Guid("95552415-778d-1865-f287-91601a81ea2c")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("95552415-778d-1865-f287-91601a81ea2c")].Value; 
                    
                }		
			
		}
#endregion
#region Relationships
         
        public IComposableProjection CustodianProjection
		{
			get{ return emop["OwnedBy"].FirstOrDefault(); }
		}    
            
		public string CustodianName  
		{
			get{
                var projection = emop["OwnedBy"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddCustodian(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = Microsoft_AD_PrinterClass.Relationships.System_ConfigItemOwnedByUser;
					
			emop.Add(value, endPoint.Target);
		}
		
		public void AddImpactedWorkItem(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = Microsoft_AD_PrinterClass.Relationships.System_WorkItemRelatesToConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> ImpactedWorkItemProjection  
		{
			get{ return emop["RelatesToWorkItem"];}
		}
				
		public void AddRelatedWorkItem(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = Microsoft_AD_PrinterClass.Relationships.System_WorkItemAboutConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> RelatedWorkItemProjection  
		{
			get{ return emop["IsAboutConfigItems"];}
		}
				
		public void AddFileAttachment(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = Microsoft_AD_PrinterClass.Relationships.System_ConfigItemHasFileAttachment;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> FileAttachmentProjection  
		{
			get{ return emop["FileAttachment"];}
		}
				
		public void AddRelatedConfigItem(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = Microsoft_AD_PrinterClass.Relationships.System_ConfigItemRelatesToConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> RelatedConfigItemProjection  
		{
			get{ return emop["TargetConfigItem"];}
		}
				
		public void AddRelatedConfigItemSource(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = Microsoft_AD_PrinterClass.Relationships.System_ConfigItemRelatesToConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> RelatedConfigItemSourceProjection  
		{
			get{ return emop["SourceConfigItem"];}
		}
				
		public void AddRelatedKnowledgeArticles(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = Microsoft_AD_PrinterClass.Relationships.System_EntityLinksToKnowledgeDocument;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> RelatedKnowledgeArticlesProjection  
		{
			get{ return emop["KnowledgeDocument"];}
		}
				
#endregion
		}// end tp class
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: ServiceManager.ConfigurationManagement.Library
			public class System_User_Projection  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public System_User_Projection(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("0e1313ab-dc5c-cf9d-d6b0-e2e9835a132a");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("19110da0-0b5d-6c48-085f-8db74d662da4");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static System_User_Projection Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, System_Domain_UserClass.GetManagementPackClass());	
					return new  System_User_Projection(p);
				}
								
				public static System_User_Projection Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.User']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("0e1313ab-dc5c-cf9d-d6b0-e2e9835a132a"), property, id);
					return  new System_User_Projection(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.Enum	
			Id 			: a6b7ea8d-9423-8529-cb21-87ac1a21fdcb
			Description : Asset status	
*/
		public ManagementPackEnumeration AssetStatus
		{	
			set {@Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")].Value = value;}
			get
			{
				if(@Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: d1aded93-3cd9-35e2-d4f4-8b4d0d37409c
			Description : Business Phone	
*/
		public string BusinessPhone
		{	
			set {@Object[new Guid("d1aded93-3cd9-35e2-d4f4-8b4d0d37409c")].Value = value;}
			get {
                    if(@Object[new Guid("d1aded93-3cd9-35e2-d4f4-8b4d0d37409c")]==null || @Object[new Guid("d1aded93-3cd9-35e2-d4f4-8b4d0d37409c")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d1aded93-3cd9-35e2-d4f4-8b4d0d37409c")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 51d9d560-1c1a-058e-4307-4e5302132612
			Description : Business Phone2	
*/
		public string BusinessPhone2
		{	
			set {@Object[new Guid("51d9d560-1c1a-058e-4307-4e5302132612")].Value = value;}
			get {
                    if(@Object[new Guid("51d9d560-1c1a-058e-4307-4e5302132612")]==null || @Object[new Guid("51d9d560-1c1a-058e-4307-4e5302132612")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("51d9d560-1c1a-058e-4307-4e5302132612")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 42b2a214-7ccc-b734-f5a7-ee7b0bb8b371
			Description : City	
*/
		public string City
		{	
			set {@Object[new Guid("42b2a214-7ccc-b734-f5a7-ee7b0bb8b371")].Value = value;}
			get {
                    if(@Object[new Guid("42b2a214-7ccc-b734-f5a7-ee7b0bb8b371")]==null || @Object[new Guid("42b2a214-7ccc-b734-f5a7-ee7b0bb8b371")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("42b2a214-7ccc-b734-f5a7-ee7b0bb8b371")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 7b3a602c-c9e3-766e-840d-a2099f5a51ad
			Description : Company	
*/
		public string Company
		{	
			set {@Object[new Guid("7b3a602c-c9e3-766e-840d-a2099f5a51ad")].Value = value;}
			get {
                    if(@Object[new Guid("7b3a602c-c9e3-766e-840d-a2099f5a51ad")]==null || @Object[new Guid("7b3a602c-c9e3-766e-840d-a2099f5a51ad")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("7b3a602c-c9e3-766e-840d-a2099f5a51ad")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 9c5cfe85-8752-d66e-c08b-419776f9c0f0
			Description : Country	
*/
		public string Country
		{	
			set {@Object[new Guid("9c5cfe85-8752-d66e-c08b-419776f9c0f0")].Value = value;}
			get {
                    if(@Object[new Guid("9c5cfe85-8752-d66e-c08b-419776f9c0f0")]==null || @Object[new Guid("9c5cfe85-8752-d66e-c08b-419776f9c0f0")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("9c5cfe85-8752-d66e-c08b-419776f9c0f0")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 22405812-2d6d-e429-110c-2d2d8f9518df
			Description : Department	
*/
		public string Department
		{	
			set {@Object[new Guid("22405812-2d6d-e429-110c-2d2d8f9518df")].Value = value;}
			get {
                    if(@Object[new Guid("22405812-2d6d-e429-110c-2d2d8f9518df")]==null || @Object[new Guid("22405812-2d6d-e429-110c-2d2d8f9518df")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("22405812-2d6d-e429-110c-2d2d8f9518df")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 0fbe2585-ca40-c136-2366-153e2e9f289b
			Description : Domain	
*/
		public string Domain
		{	
			set {@Object[new Guid("0fbe2585-ca40-c136-2366-153e2e9f289b")].Value = value;}
			get {
                    if(@Object[new Guid("0fbe2585-ca40-c136-2366-153e2e9f289b")]==null || @Object[new Guid("0fbe2585-ca40-c136-2366-153e2e9f289b")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("0fbe2585-ca40-c136-2366-153e2e9f289b")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d56f368d-2e48-e4be-f4eb-f82744879663
			Description : Employee Identifier	
*/
		public string EmployeeId
		{	
			set {@Object[new Guid("d56f368d-2e48-e4be-f4eb-f82744879663")].Value = value;}
			get {
                    if(@Object[new Guid("d56f368d-2e48-e4be-f4eb-f82744879663")]==null || @Object[new Guid("d56f368d-2e48-e4be-f4eb-f82744879663")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d56f368d-2e48-e4be-f4eb-f82744879663")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d962f04f-1429-a910-fa7b-ac8444645aee
			Description : Fax	
*/
		public string Fax
		{	
			set {@Object[new Guid("d962f04f-1429-a910-fa7b-ac8444645aee")].Value = value;}
			get {
                    if(@Object[new Guid("d962f04f-1429-a910-fa7b-ac8444645aee")]==null || @Object[new Guid("d962f04f-1429-a910-fa7b-ac8444645aee")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d962f04f-1429-a910-fa7b-ac8444645aee")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: a1dd0787-f6b9-5131-3f43-f356ca2bb163
			Description : First Name	
*/
		public string FirstName
		{	
			set {@Object[new Guid("a1dd0787-f6b9-5131-3f43-f356ca2bb163")].Value = value;}
			get {
                    if(@Object[new Guid("a1dd0787-f6b9-5131-3f43-f356ca2bb163")]==null || @Object[new Guid("a1dd0787-f6b9-5131-3f43-f356ca2bb163")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("a1dd0787-f6b9-5131-3f43-f356ca2bb163")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: b22c0740-cdcc-4e9d-9ad2-d97b096f8330
			Description : Home Phone	
*/
		public string HomePhone
		{	
			set {@Object[new Guid("b22c0740-cdcc-4e9d-9ad2-d97b096f8330")].Value = value;}
			get {
                    if(@Object[new Guid("b22c0740-cdcc-4e9d-9ad2-d97b096f8330")]==null || @Object[new Guid("b22c0740-cdcc-4e9d-9ad2-d97b096f8330")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("b22c0740-cdcc-4e9d-9ad2-d97b096f8330")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 1e319ed0-84e5-98d1-b4cb-e62b524d81b1
			Description : Home Phone2	
*/
		public string HomePhone2
		{	
			set {@Object[new Guid("1e319ed0-84e5-98d1-b4cb-e62b524d81b1")].Value = value;}
			get {
                    if(@Object[new Guid("1e319ed0-84e5-98d1-b4cb-e62b524d81b1")]==null || @Object[new Guid("1e319ed0-84e5-98d1-b4cb-e62b524d81b1")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("1e319ed0-84e5-98d1-b4cb-e62b524d81b1")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 7b32dd73-f649-f288-f8a1-13b16481eca6
			Description : Initials	
*/
		public string Initials
		{	
			set {@Object[new Guid("7b32dd73-f649-f288-f8a1-13b16481eca6")].Value = value;}
			get {
                    if(@Object[new Guid("7b32dd73-f649-f288-f8a1-13b16481eca6")]==null || @Object[new Guid("7b32dd73-f649-f288-f8a1-13b16481eca6")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("7b32dd73-f649-f288-f8a1-13b16481eca6")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 2cde06de-0ad2-ea7a-50b0-627d0a2337df
			Description : Last Name	
*/
		public string LastName
		{	
			set {@Object[new Guid("2cde06de-0ad2-ea7a-50b0-627d0a2337df")].Value = value;}
			get {
                    if(@Object[new Guid("2cde06de-0ad2-ea7a-50b0-627d0a2337df")]==null || @Object[new Guid("2cde06de-0ad2-ea7a-50b0-627d0a2337df")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("2cde06de-0ad2-ea7a-50b0-627d0a2337df")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 79a97a95-f92d-eb97-e9e9-d4b9c51e0ab5
			Description : Mobile	
*/
		public string Mobile
		{	
			set {@Object[new Guid("79a97a95-f92d-eb97-e9e9-d4b9c51e0ab5")].Value = value;}
			get {
                    if(@Object[new Guid("79a97a95-f92d-eb97-e9e9-d4b9c51e0ab5")]==null || @Object[new Guid("79a97a95-f92d-eb97-e9e9-d4b9c51e0ab5")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("79a97a95-f92d-eb97-e9e9-d4b9c51e0ab5")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 55124dce-750d-bd54-4b92-d1fddf99adec
			Description : Notes	
*/
		public string Notes
		{	
			set {@Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value = value;}
			get {
                    if(@Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")]==null || @Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 11927069-6957-dfcf-a277-08a784221325
			Description : Object status	
*/
		public ManagementPackEnumeration ObjectStatus
		{	
			set {@Object[new Guid("11927069-6957-dfcf-a277-08a784221325")].Value = value;}
			get
			{
				if(@Object[new Guid("11927069-6957-dfcf-a277-08a784221325")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("11927069-6957-dfcf-a277-08a784221325")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 6021c777-23dd-c73a-3465-b97e00d7a1ba
			Description : Office	
*/
		public string Office
		{	
			set {@Object[new Guid("6021c777-23dd-c73a-3465-b97e00d7a1ba")].Value = value;}
			get {
                    if(@Object[new Guid("6021c777-23dd-c73a-3465-b97e00d7a1ba")]==null || @Object[new Guid("6021c777-23dd-c73a-3465-b97e00d7a1ba")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("6021c777-23dd-c73a-3465-b97e00d7a1ba")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d72232bd-85e4-3e3d-1f33-6bebf3b7606a
			Description : Pager	
*/
		public string Pager
		{	
			set {@Object[new Guid("d72232bd-85e4-3e3d-1f33-6bebf3b7606a")].Value = value;}
			get {
                    if(@Object[new Guid("d72232bd-85e4-3e3d-1f33-6bebf3b7606a")]==null || @Object[new Guid("d72232bd-85e4-3e3d-1f33-6bebf3b7606a")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d72232bd-85e4-3e3d-1f33-6bebf3b7606a")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: ed79d5a6-19ff-6c72-7204-1b7b26677f17
			Description : State	
*/
		public string State
		{	
			set {@Object[new Guid("ed79d5a6-19ff-6c72-7204-1b7b26677f17")].Value = value;}
			get {
                    if(@Object[new Guid("ed79d5a6-19ff-6c72-7204-1b7b26677f17")]==null || @Object[new Guid("ed79d5a6-19ff-6c72-7204-1b7b26677f17")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("ed79d5a6-19ff-6c72-7204-1b7b26677f17")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 3c923ab8-1f93-bd52-07a9-df59fd78bd1f
			Description : Street Address	
*/
		public string StreetAddress
		{	
			set {@Object[new Guid("3c923ab8-1f93-bd52-07a9-df59fd78bd1f")].Value = value;}
			get {
                    if(@Object[new Guid("3c923ab8-1f93-bd52-07a9-df59fd78bd1f")]==null || @Object[new Guid("3c923ab8-1f93-bd52-07a9-df59fd78bd1f")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("3c923ab8-1f93-bd52-07a9-df59fd78bd1f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 9010dfd3-8bce-eac9-6657-d19130e07bfa
			Description : Title	
*/
		public string Title
		{	
			set {@Object[new Guid("9010dfd3-8bce-eac9-6657-d19130e07bfa")].Value = value;}
			get {
                    if(@Object[new Guid("9010dfd3-8bce-eac9-6657-d19130e07bfa")]==null || @Object[new Guid("9010dfd3-8bce-eac9-6657-d19130e07bfa")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("9010dfd3-8bce-eac9-6657-d19130e07bfa")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 3217af5a-b135-a850-0562-be3e89da6d1a
			Description : User Name	
*/
		public string UserName
		{	
			set {@Object[new Guid("3217af5a-b135-a850-0562-be3e89da6d1a")].Value = value;}
			get {
                    if(@Object[new Guid("3217af5a-b135-a850-0562-be3e89da6d1a")]==null || @Object[new Guid("3217af5a-b135-a850-0562-be3e89da6d1a")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("3217af5a-b135-a850-0562-be3e89da6d1a")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 584266bf-a344-f323-a15b-4a761aecd867
			Description : Zip	
*/
		public string Zip
		{	
			set {@Object[new Guid("584266bf-a344-f323-a15b-4a761aecd867")].Value = value;}
			get {
                    if(@Object[new Guid("584266bf-a344-f323-a15b-4a761aecd867")]==null || @Object[new Guid("584266bf-a344-f323-a15b-4a761aecd867")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("584266bf-a344-f323-a15b-4a761aecd867")].Value; 
                    
                }		
			
		}
#endregion
#region Relationships
         
        public IComposableProjection ManagerProjection
		{
			get{ return emop["Manager"].FirstOrDefault(); }
		}    
            
		public string ManagerName  
		{
			get{
                var projection = emop["Manager"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddManager(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_Domain_UserClass.Relationships.System_UserManagesUser;
					
			emop.Add(value, endPoint.Target);
		}
		
		public void AddNotification(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_Domain_UserClass.Relationships.System_UserHasPreference;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> NotificationProjection  
		{
			get{ return emop["Preference"];}
		}
				
		public void AddPreference(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_Domain_UserClass.Relationships.System_UserHasPreference;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> PreferenceProjection  
		{
			get{ return emop["Preference"];}
		}
				
		public void AddReport(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_Domain_UserClass.Relationships.System_UserManagesUser;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> ReportProjection  
		{
			get{ return emop["Manages"];}
		}
				
		public void AddCreatedBy(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_Domain_UserClass.Relationships.System_WorkItemCreatedByUser;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> CreatedByProjection  
		{
			get{ return emop["IsCreatedByUser"];}
		}
				
		public void AddAffectedUser(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_Domain_UserClass.Relationships.System_WorkItemAffectedUser;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> AffectedUserProjection  
		{
			get{ return emop["IsCreatedForUser"];}
		}
				
		public void AddAssignedUser(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_Domain_UserClass.Relationships.System_WorkItemAssignedToUser;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> AssignedUserProjection  
		{
			get{ return emop["IsAssignedToUser"];}
		}
				
		public void AddClosedBy(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_Domain_UserClass.Relationships.System_WorkItem_TroubleTicketClosedByUser;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> ClosedByProjection  
		{
			get{ return emop["ClosedByUser"];}
		}
				
		public void AddCustodian(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_Domain_UserClass.Relationships.System_ConfigItemOwnedByUser;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> CustodianProjection  
		{
			get{ return emop["ConfigItem"];}
		}
				
		public void AddPrimaryUser(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_Domain_UserClass.Relationships.System_ComputerPrimaryUser;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> PrimaryUserProjection  
		{
			get{ return emop["Uses"];}
		}
				
#endregion
		}// end tp class
		}// end mp class
			public class ServiceManager_IncidentManagement_Configuration
			{
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: ServiceManager.IncidentManagement.Configuration
			public class System_WorkItem_Incident_View_ProjectionType  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public System_WorkItem_Incident_View_ProjectionType(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("1862825e-21bc-3ab2-223e-2a7f2439ba75");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("b1207ce1-d1ee-cd35-65ea-f8b10bebac7d");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static System_WorkItem_Incident_View_ProjectionType Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, System_WorkItem_IncidentClass.GetManagementPackClass());	
					return new  System_WorkItem_Incident_View_ProjectionType(p);
				}
								
				public static System_WorkItem_Incident_View_ProjectionType Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.WorkItem.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.WorkItem.TroubleTicket']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("1862825e-21bc-3ab2-223e-2a7f2439ba75"), property, id);
					return  new System_WorkItem_Incident_View_ProjectionType(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.DateTime	
			Id 			: 665ed498-2551-7559-dce8-493e1ea171df
			Description : Actual end date	
*/
		public DateTime? ActualEndDate
		{	
			set {@Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value = value;}
			get {
                    if(@Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")]==null || @Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: d3c9aa55-bbc0-964e-716b-99defdac4405
			Description : Actual start date	
*/
		public DateTime? ActualStartDate
		{	
			set {@Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value = value;}
			get {
                    if(@Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")]==null || @Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: c7a6ab7a-0b74-6848-02f7-79f7245662d1
			Description : Incident classification category	
*/
		public ManagementPackEnumeration Classification
		{	
			set {@Object[new Guid("c7a6ab7a-0b74-6848-02f7-79f7245662d1")].Value = value;}
			get
			{
				if(@Object[new Guid("c7a6ab7a-0b74-6848-02f7-79f7245662d1")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("c7a6ab7a-0b74-6848-02f7-79f7245662d1")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.DateTime	
			Id 			: 1d859e5b-0686-3ecc-0ef1-4cfce89a73fb
			Description : Closed date	
*/
		public DateTime? ClosedDate
		{	
			set {@Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")].Value = value;}
			get {
                    if(@Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")]==null || @Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d57cb7bc-d1d5-9614-0fe5-4002129da88b
			Description : Alternate contact method	
*/
		public string ContactMethod
		{	
			set {@Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value = value;}
			get {
                    if(@Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")]==null || @Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: ae5c5126-8937-8bdd-11f8-a7641bc06645
			Description : Created date	
*/
		public DateTime? CreatedDate
		{	
			set {@Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value = value;}
			get {
                    if(@Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")]==null || @Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: e5162c95-9469-924c-2298-9e351e0dc383
			Description : Description	
*/
		public string Description
		{	
			set {@Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value = value;}
			get {
                    if(@Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")]==null || @Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: 4e81b48c-0de6-9fc6-b0b8-f3ae96bf2df6
			Description : Escalated	
*/
		public bool? Escalated
		{	
			set {@Object[new Guid("4e81b48c-0de6-9fc6-b0b8-f3ae96bf2df6")].Value = value;}
			get
			{
				if(@Object[new Guid("4e81b48c-0de6-9fc6-b0b8-f3ae96bf2df6")] != null)
				return  (bool?) @Object[new Guid("4e81b48c-0de6-9fc6-b0b8-f3ae96bf2df6")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Boolean	
			Id 			: 1aab055e-b590-e9c8-c7e0-a99ad06443c7
			Description : Has created knowledge article	
*/
		public bool? HasCreatedKnowledgeArticle
		{	
			set {@Object[new Guid("1aab055e-b590-e9c8-c7e0-a99ad06443c7")].Value = value;}
			get
			{
				if(@Object[new Guid("1aab055e-b590-e9c8-c7e0-a99ad06443c7")] != null)
				return  (bool?) @Object[new Guid("1aab055e-b590-e9c8-c7e0-a99ad06443c7")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 28b1c58f-aefa-a449-7496-4805186bd94f
			Description : Work item ID	
*/
		public string Id
		{	
			set {@Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value = value;}
			get {
                    if(@Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")]==null || @Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: a74f8856-ffe2-fcad-67e0-38a7397336b5
			Description : Impact	
*/
		public ManagementPackEnumeration Impact
		{	
			set {@Object[new Guid("a74f8856-ffe2-fcad-67e0-38a7397336b5")].Value = value;}
			get
			{
				if(@Object[new Guid("a74f8856-ffe2-fcad-67e0-38a7397336b5")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("a74f8856-ffe2-fcad-67e0-38a7397336b5")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Enum	
			Id 			: d64785d9-16f0-67d5-23fc-c1047093cbf3
			Description : Last modified source	
*/
		public ManagementPackEnumeration LastModifiedSource
		{	
			set {@Object[new Guid("d64785d9-16f0-67d5-23fc-c1047093cbf3")].Value = value;}
			get
			{
				if(@Object[new Guid("d64785d9-16f0-67d5-23fc-c1047093cbf3")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("d64785d9-16f0-67d5-23fc-c1047093cbf3")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Boolean	
			Id 			: 68f93a71-ab0f-27fd-96ea-a1447117037a
			Description : Needs knowledge article	
*/
		public bool? NeedsKnowledgeArticle
		{	
			set {@Object[new Guid("68f93a71-ab0f-27fd-96ea-a1447117037a")].Value = value;}
			get
			{
				if(@Object[new Guid("68f93a71-ab0f-27fd-96ea-a1447117037a")] != null)
				return  (bool?) @Object[new Guid("68f93a71-ab0f-27fd-96ea-a1447117037a")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Int32	
			Id 			: 983ef3b4-1c7d-c05d-c28c-b89bc56426e2
			Description : Priority	
*/
		public int Priority
		{	
			set {@Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")].Value = value;}
			get {
                    if(@Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")]==null || @Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: ff6e5587-525c-3cd8-c508-fb44624de0fc
			Description : Resolution category	
*/
		public ManagementPackEnumeration ResolutionCategory
		{	
			set {@Object[new Guid("ff6e5587-525c-3cd8-c508-fb44624de0fc")].Value = value;}
			get
			{
				if(@Object[new Guid("ff6e5587-525c-3cd8-c508-fb44624de0fc")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("ff6e5587-525c-3cd8-c508-fb44624de0fc")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0
			Description : Resolution description	
*/
		public string ResolutionDescription
		{	
			set {@Object[new Guid("c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0")].Value = value;}
			get {
                    if(@Object[new Guid("c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0")]==null || @Object[new Guid("c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: a1b981cb-fbec-d0df-6465-5212d0076435
			Description : Resolved date	
*/
		public DateTime? ResolvedDate
		{	
			set {@Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")].Value = value;}
			get {
                    if(@Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")]==null || @Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: 1d59dc56-995b-1884-beef-7663a0103e28
			Description : Scheduled end date	
*/
		public DateTime? ScheduledEndDate
		{	
			set {@Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value = value;}
			get {
                    if(@Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")]==null || @Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: fb3b75ce-5483-b5a0-7498-10c585cef3b4
			Description : Scheduled start date	
*/
		public DateTime? ScheduledStartDate
		{	
			set {@Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value = value;}
			get {
                    if(@Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")]==null || @Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 72e56ac1-4147-273f-655a-55dafa41ff97
			Description : Source	
*/
		public ManagementPackEnumeration Source
		{	
			set {@Object[new Guid("72e56ac1-4147-273f-655a-55dafa41ff97")].Value = value;}
			get
			{
				if(@Object[new Guid("72e56ac1-4147-273f-655a-55dafa41ff97")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("72e56ac1-4147-273f-655a-55dafa41ff97")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Enum	
			Id 			: b528d69d-987b-1f9d-6eed-4cced7f53b3c
			Description : Status	
*/
		public ManagementPackEnumeration Status
		{	
			set {@Object[new Guid("b528d69d-987b-1f9d-6eed-4cced7f53b3c")].Value = value;}
			get
			{
				if(@Object[new Guid("b528d69d-987b-1f9d-6eed-4cced7f53b3c")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("b528d69d-987b-1f9d-6eed-4cced7f53b3c")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.DateTime	
			Id 			: 3fd816cd-d07e-8f69-2829-b7789d23a438
			Description : Target resolution time	
*/
		public DateTime? TargetResolutionTime
		{	
			set {@Object[new Guid("3fd816cd-d07e-8f69-2829-b7789d23a438")].Value = value;}
			get {
                    if(@Object[new Guid("3fd816cd-d07e-8f69-2829-b7789d23a438")]==null || @Object[new Guid("3fd816cd-d07e-8f69-2829-b7789d23a438")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("3fd816cd-d07e-8f69-2829-b7789d23a438")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 00cf00f8-9335-2bf7-f9e1-6bd1fd4fb13d
			Description : Support group	
*/
		public ManagementPackEnumeration TierQueue
		{	
			set {@Object[new Guid("00cf00f8-9335-2bf7-f9e1-6bd1fd4fb13d")].Value = value;}
			get
			{
				if(@Object[new Guid("00cf00f8-9335-2bf7-f9e1-6bd1fd4fb13d")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("00cf00f8-9335-2bf7-f9e1-6bd1fd4fb13d")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 029dd446-c76c-ab37-a105-235da4f979dd
			Description : Title	
*/
		public string Title
		{	
			set {@Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value = value;}
			get {
                    if(@Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")]==null || @Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: af230625-9b6c-842f-e22e-06bd25326fa5
			Description : Urgency	
*/
		public ManagementPackEnumeration Urgency
		{	
			set {@Object[new Guid("af230625-9b6c-842f-e22e-06bd25326fa5")].Value = value;}
			get
			{
				if(@Object[new Guid("af230625-9b6c-842f-e22e-06bd25326fa5")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("af230625-9b6c-842f-e22e-06bd25326fa5")].Value;
				else
				return null;
			}
		}
#endregion
#region Relationships
         
        public IComposableProjection AffectedUserProjection
		{
			get{ return emop["RequestedWorkItem"].FirstOrDefault(); }
		}    
            
		public string AffectedUserName  
		{
			get{
                var projection = emop["RequestedWorkItem"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddAffectedUser(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_WorkItem_IncidentClass.Relationships.System_WorkItemAffectedUser;
					
			emop.Add(value, endPoint.Target);
		}
		
         
        public IComposableProjection AssignedUserProjection
		{
			get{ return emop["AssignedWorkItem"].FirstOrDefault(); }
		}    
            
		public string AssignedUserName  
		{
			get{
                var projection = emop["AssignedWorkItem"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddAssignedUser(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_WorkItem_IncidentClass.Relationships.System_WorkItemAssignedToUser;
					
			emop.Add(value, endPoint.Target);
		}
		
#endregion
		}// end tp class
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: ServiceManager.IncidentManagement.Configuration
			public class System_WorkItem_Incident_View_DCMProjectionType  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public System_WorkItem_Incident_View_DCMProjectionType(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("137b63d6-00ea-982f-a5e6-6caedf09bb76");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("b1207ce1-d1ee-cd35-65ea-f8b10bebac7d");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static System_WorkItem_Incident_View_DCMProjectionType Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, Microsoft_SystemCenter_WorkItem_DCMIncidentClass.GetManagementPackClass());	
					return new  System_WorkItem_Incident_View_DCMProjectionType(p);
				}
								
				public static System_WorkItem_Incident_View_DCMProjectionType Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.WorkItem.Incident.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.WorkItem.Incident']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("137b63d6-00ea-982f-a5e6-6caedf09bb76"), property, id);
					return  new System_WorkItem_Incident_View_DCMProjectionType(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.DateTime	
			Id 			: 665ed498-2551-7559-dce8-493e1ea171df
			Description : Actual end date	
*/
		public DateTime? ActualEndDate
		{	
			set {@Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value = value;}
			get {
                    if(@Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")]==null || @Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: d3c9aa55-bbc0-964e-716b-99defdac4405
			Description : Actual start date	
*/
		public DateTime? ActualStartDate
		{	
			set {@Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value = value;}
			get {
                    if(@Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")]==null || @Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 86307de6-3b31-0073-fd06-841b6b9b2288
			Description : Baseline Identifier	
*/
		public string BaselineId
		{	
			set {@Object[new Guid("86307de6-3b31-0073-fd06-841b6b9b2288")].Value = value;}
			get {
                    if(@Object[new Guid("86307de6-3b31-0073-fd06-841b6b9b2288")]==null || @Object[new Guid("86307de6-3b31-0073-fd06-841b6b9b2288")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("86307de6-3b31-0073-fd06-841b6b9b2288")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 3cc23acd-d9ae-5a5e-f3be-a37e79ae363d
			Description : CI ID	
*/
		public string CIId
		{	
			set {@Object[new Guid("3cc23acd-d9ae-5a5e-f3be-a37e79ae363d")].Value = value;}
			get {
                    if(@Object[new Guid("3cc23acd-d9ae-5a5e-f3be-a37e79ae363d")]==null || @Object[new Guid("3cc23acd-d9ae-5a5e-f3be-a37e79ae363d")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("3cc23acd-d9ae-5a5e-f3be-a37e79ae363d")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: c7a6ab7a-0b74-6848-02f7-79f7245662d1
			Description : Incident classification category	
*/
		public ManagementPackEnumeration Classification
		{	
			set {@Object[new Guid("c7a6ab7a-0b74-6848-02f7-79f7245662d1")].Value = value;}
			get
			{
				if(@Object[new Guid("c7a6ab7a-0b74-6848-02f7-79f7245662d1")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("c7a6ab7a-0b74-6848-02f7-79f7245662d1")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.DateTime	
			Id 			: 1d859e5b-0686-3ecc-0ef1-4cfce89a73fb
			Description : Closed date	
*/
		public DateTime? ClosedDate
		{	
			set {@Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")].Value = value;}
			get {
                    if(@Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")]==null || @Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.IO.Stream	
			Id 			: 2da2dd13-40c1-3074-d303-6c7866044e0f
			Description : Compliance Status Details	
*/
		public Stream ComplianceStatusDetails
		{	
			set {@Object[new Guid("2da2dd13-40c1-3074-d303-6c7866044e0f")].Value = value;}
			get {
                    if(@Object[new Guid("2da2dd13-40c1-3074-d303-6c7866044e0f")]==null || @Object[new Guid("2da2dd13-40c1-3074-d303-6c7866044e0f")].Value==null) 
                        return default(Stream) ;    
                    return (Stream) @Object[new Guid("2da2dd13-40c1-3074-d303-6c7866044e0f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 11531973-10b3-f9f7-a495-9af956e3882c
			Description : Computer Name	
*/
		public string ComputerName
		{	
			set {@Object[new Guid("11531973-10b3-f9f7-a495-9af956e3882c")].Value = value;}
			get {
                    if(@Object[new Guid("11531973-10b3-f9f7-a495-9af956e3882c")]==null || @Object[new Guid("11531973-10b3-f9f7-a495-9af956e3882c")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("11531973-10b3-f9f7-a495-9af956e3882c")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d57cb7bc-d1d5-9614-0fe5-4002129da88b
			Description : Alternate contact method	
*/
		public string ContactMethod
		{	
			set {@Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value = value;}
			get {
                    if(@Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")]==null || @Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: ae5c5126-8937-8bdd-11f8-a7641bc06645
			Description : Created date	
*/
		public DateTime? CreatedDate
		{	
			set {@Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value = value;}
			get {
                    if(@Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")]==null || @Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: e5162c95-9469-924c-2298-9e351e0dc383
			Description : Description	
*/
		public string Description
		{	
			set {@Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value = value;}
			get {
                    if(@Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")]==null || @Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: 4e81b48c-0de6-9fc6-b0b8-f3ae96bf2df6
			Description : Escalated	
*/
		public bool? Escalated
		{	
			set {@Object[new Guid("4e81b48c-0de6-9fc6-b0b8-f3ae96bf2df6")].Value = value;}
			get
			{
				if(@Object[new Guid("4e81b48c-0de6-9fc6-b0b8-f3ae96bf2df6")] != null)
				return  (bool?) @Object[new Guid("4e81b48c-0de6-9fc6-b0b8-f3ae96bf2df6")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Boolean	
			Id 			: 1aab055e-b590-e9c8-c7e0-a99ad06443c7
			Description : Has created knowledge article	
*/
		public bool? HasCreatedKnowledgeArticle
		{	
			set {@Object[new Guid("1aab055e-b590-e9c8-c7e0-a99ad06443c7")].Value = value;}
			get
			{
				if(@Object[new Guid("1aab055e-b590-e9c8-c7e0-a99ad06443c7")] != null)
				return  (bool?) @Object[new Guid("1aab055e-b590-e9c8-c7e0-a99ad06443c7")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 28b1c58f-aefa-a449-7496-4805186bd94f
			Description : Work item ID	
*/
		public string Id
		{	
			set {@Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value = value;}
			get {
                    if(@Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")]==null || @Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: a74f8856-ffe2-fcad-67e0-38a7397336b5
			Description : Impact	
*/
		public ManagementPackEnumeration Impact
		{	
			set {@Object[new Guid("a74f8856-ffe2-fcad-67e0-38a7397336b5")].Value = value;}
			get
			{
				if(@Object[new Guid("a74f8856-ffe2-fcad-67e0-38a7397336b5")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("a74f8856-ffe2-fcad-67e0-38a7397336b5")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.DateTime	
			Id 			: aafa7462-d3af-1686-7386-4cec108ff546
			Description : Last Compliance Scan Time	
*/
		public DateTime? LastComplianceScanTime
		{	
			set {@Object[new Guid("aafa7462-d3af-1686-7386-4cec108ff546")].Value = value;}
			get {
                    if(@Object[new Guid("aafa7462-d3af-1686-7386-4cec108ff546")]==null || @Object[new Guid("aafa7462-d3af-1686-7386-4cec108ff546")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("aafa7462-d3af-1686-7386-4cec108ff546")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: d64785d9-16f0-67d5-23fc-c1047093cbf3
			Description : Last modified source	
*/
		public ManagementPackEnumeration LastModifiedSource
		{	
			set {@Object[new Guid("d64785d9-16f0-67d5-23fc-c1047093cbf3")].Value = value;}
			get
			{
				if(@Object[new Guid("d64785d9-16f0-67d5-23fc-c1047093cbf3")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("d64785d9-16f0-67d5-23fc-c1047093cbf3")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Int32	
			Id 			: beb725e5-3761-5fe7-0949-bb54811b7174
			Description : Max Noncompliance Criticality	
*/
		public int MaxNonComplianceCriticality
		{	
			set {@Object[new Guid("beb725e5-3761-5fe7-0949-bb54811b7174")].Value = value;}
			get {
                    if(@Object[new Guid("beb725e5-3761-5fe7-0949-bb54811b7174")]==null || @Object[new Guid("beb725e5-3761-5fe7-0949-bb54811b7174")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("beb725e5-3761-5fe7-0949-bb54811b7174")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: 68f93a71-ab0f-27fd-96ea-a1447117037a
			Description : Needs knowledge article	
*/
		public bool? NeedsKnowledgeArticle
		{	
			set {@Object[new Guid("68f93a71-ab0f-27fd-96ea-a1447117037a")].Value = value;}
			get
			{
				if(@Object[new Guid("68f93a71-ab0f-27fd-96ea-a1447117037a")] != null)
				return  (bool?) @Object[new Guid("68f93a71-ab0f-27fd-96ea-a1447117037a")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Int32	
			Id 			: 983ef3b4-1c7d-c05d-c28c-b89bc56426e2
			Description : Priority	
*/
		public int Priority
		{	
			set {@Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")].Value = value;}
			get {
                    if(@Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")]==null || @Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: ff6e5587-525c-3cd8-c508-fb44624de0fc
			Description : Resolution category	
*/
		public ManagementPackEnumeration ResolutionCategory
		{	
			set {@Object[new Guid("ff6e5587-525c-3cd8-c508-fb44624de0fc")].Value = value;}
			get
			{
				if(@Object[new Guid("ff6e5587-525c-3cd8-c508-fb44624de0fc")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("ff6e5587-525c-3cd8-c508-fb44624de0fc")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0
			Description : Resolution description	
*/
		public string ResolutionDescription
		{	
			set {@Object[new Guid("c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0")].Value = value;}
			get {
                    if(@Object[new Guid("c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0")]==null || @Object[new Guid("c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: a1b981cb-fbec-d0df-6465-5212d0076435
			Description : Resolved date	
*/
		public DateTime? ResolvedDate
		{	
			set {@Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")].Value = value;}
			get {
                    if(@Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")]==null || @Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: 1d59dc56-995b-1884-beef-7663a0103e28
			Description : Scheduled end date	
*/
		public DateTime? ScheduledEndDate
		{	
			set {@Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value = value;}
			get {
                    if(@Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")]==null || @Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: fb3b75ce-5483-b5a0-7498-10c585cef3b4
			Description : Scheduled start date	
*/
		public DateTime? ScheduledStartDate
		{	
			set {@Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value = value;}
			get {
                    if(@Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")]==null || @Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 6a385d2c-ff33-460e-f6d9-890befac6dfa
			Description : Site Identifier	
*/
		public string SiteId
		{	
			set {@Object[new Guid("6a385d2c-ff33-460e-f6d9-890befac6dfa")].Value = value;}
			get {
                    if(@Object[new Guid("6a385d2c-ff33-460e-f6d9-890befac6dfa")]==null || @Object[new Guid("6a385d2c-ff33-460e-f6d9-890befac6dfa")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("6a385d2c-ff33-460e-f6d9-890befac6dfa")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 72e56ac1-4147-273f-655a-55dafa41ff97
			Description : Source	
*/
		public ManagementPackEnumeration Source
		{	
			set {@Object[new Guid("72e56ac1-4147-273f-655a-55dafa41ff97")].Value = value;}
			get
			{
				if(@Object[new Guid("72e56ac1-4147-273f-655a-55dafa41ff97")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("72e56ac1-4147-273f-655a-55dafa41ff97")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Enum	
			Id 			: b528d69d-987b-1f9d-6eed-4cced7f53b3c
			Description : Status	
*/
		public ManagementPackEnumeration Status
		{	
			set {@Object[new Guid("b528d69d-987b-1f9d-6eed-4cced7f53b3c")].Value = value;}
			get
			{
				if(@Object[new Guid("b528d69d-987b-1f9d-6eed-4cced7f53b3c")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("b528d69d-987b-1f9d-6eed-4cced7f53b3c")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.DateTime	
			Id 			: 3fd816cd-d07e-8f69-2829-b7789d23a438
			Description : Target resolution time	
*/
		public DateTime? TargetResolutionTime
		{	
			set {@Object[new Guid("3fd816cd-d07e-8f69-2829-b7789d23a438")].Value = value;}
			get {
                    if(@Object[new Guid("3fd816cd-d07e-8f69-2829-b7789d23a438")]==null || @Object[new Guid("3fd816cd-d07e-8f69-2829-b7789d23a438")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("3fd816cd-d07e-8f69-2829-b7789d23a438")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 00cf00f8-9335-2bf7-f9e1-6bd1fd4fb13d
			Description : Support group	
*/
		public ManagementPackEnumeration TierQueue
		{	
			set {@Object[new Guid("00cf00f8-9335-2bf7-f9e1-6bd1fd4fb13d")].Value = value;}
			get
			{
				if(@Object[new Guid("00cf00f8-9335-2bf7-f9e1-6bd1fd4fb13d")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("00cf00f8-9335-2bf7-f9e1-6bd1fd4fb13d")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 029dd446-c76c-ab37-a105-235da4f979dd
			Description : Title	
*/
		public string Title
		{	
			set {@Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value = value;}
			get {
                    if(@Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")]==null || @Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: af230625-9b6c-842f-e22e-06bd25326fa5
			Description : Urgency	
*/
		public ManagementPackEnumeration Urgency
		{	
			set {@Object[new Guid("af230625-9b6c-842f-e22e-06bd25326fa5")].Value = value;}
			get
			{
				if(@Object[new Guid("af230625-9b6c-842f-e22e-06bd25326fa5")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("af230625-9b6c-842f-e22e-06bd25326fa5")].Value;
				else
				return null;
			}
		}
#endregion
#region Relationships
         
        public IComposableProjection AffectedUserProjection
		{
			get{ return emop["RequestedWorkItem"].FirstOrDefault(); }
		}    
            
		public string AffectedUserName  
		{
			get{
                var projection = emop["RequestedWorkItem"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddAffectedUser(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = Microsoft_SystemCenter_WorkItem_DCMIncidentClass.Relationships.System_WorkItemAffectedUser;
					
			emop.Add(value, endPoint.Target);
		}
		
         
        public IComposableProjection AssignedUserProjection
		{
			get{ return emop["AssignedWorkItem"].FirstOrDefault(); }
		}    
            
		public string AssignedUserName  
		{
			get{
                var projection = emop["AssignedWorkItem"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddAssignedUser(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = Microsoft_SystemCenter_WorkItem_DCMIncidentClass.Relationships.System_WorkItemAssignedToUser;
					
			emop.Add(value, endPoint.Target);
		}
		
         
        public IComposableProjection AffectedComputerProjection
		{
			get{ return emop["NonComplianceCI"].FirstOrDefault(); }
		}    
            
		public string AffectedComputerName  
		{
			get{
                var projection = emop["NonComplianceCI"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddAffectedComputer(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = Microsoft_SystemCenter_WorkItem_DCMIncidentClass.Relationships.Microsoft_SystemCenter_WorkItem_DCMIncident_Refers_NonComplianceComputer;
					
			emop.Add(value, endPoint.Target);
		}
		
#endregion
		}// end tp class
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: ServiceManager.IncidentManagement.Configuration
			public class System_WorkItem_Incident_View_SCOMProjectionType  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public System_WorkItem_Incident_View_SCOMProjectionType(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("ea8ec5b5-6a05-fde2-c884-d505a65df31c");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("b1207ce1-d1ee-cd35-65ea-f8b10bebac7d");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static System_WorkItem_Incident_View_SCOMProjectionType Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, Microsoft_SystemCenter_WorkItem_SCOMIncidentClass.GetManagementPackClass());	
					return new  System_WorkItem_Incident_View_SCOMProjectionType(p);
				}
								
				public static System_WorkItem_Incident_View_SCOMProjectionType Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.WorkItem.Incident.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.WorkItem.Incident']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("ea8ec5b5-6a05-fde2-c884-d505a65df31c"), property, id);
					return  new System_WorkItem_Incident_View_SCOMProjectionType(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.DateTime	
			Id 			: 665ed498-2551-7559-dce8-493e1ea171df
			Description : Actual end date	
*/
		public DateTime? ActualEndDate
		{	
			set {@Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value = value;}
			get {
                    if(@Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")]==null || @Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: d3c9aa55-bbc0-964e-716b-99defdac4405
			Description : Actual start date	
*/
		public DateTime? ActualStartDate
		{	
			set {@Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value = value;}
			get {
                    if(@Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")]==null || @Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 95338505-6991-8f15-e1e4-24184071adeb
			Description : Alert Custom Field 1	
*/
		public string AlertCustomField1
		{	
			set {@Object[new Guid("95338505-6991-8f15-e1e4-24184071adeb")].Value = value;}
			get {
                    if(@Object[new Guid("95338505-6991-8f15-e1e4-24184071adeb")]==null || @Object[new Guid("95338505-6991-8f15-e1e4-24184071adeb")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("95338505-6991-8f15-e1e4-24184071adeb")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 7e2eb2de-9c8a-f9cd-cb3a-9682cf9e4125
			Description : Alert Custom Field 10	
*/
		public string AlertCustomField10
		{	
			set {@Object[new Guid("7e2eb2de-9c8a-f9cd-cb3a-9682cf9e4125")].Value = value;}
			get {
                    if(@Object[new Guid("7e2eb2de-9c8a-f9cd-cb3a-9682cf9e4125")]==null || @Object[new Guid("7e2eb2de-9c8a-f9cd-cb3a-9682cf9e4125")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("7e2eb2de-9c8a-f9cd-cb3a-9682cf9e4125")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 63a6c5ab-8a8a-7372-efb4-43f0b45d57bd
			Description : Alert Custom Field 2	
*/
		public string AlertCustomField2
		{	
			set {@Object[new Guid("63a6c5ab-8a8a-7372-efb4-43f0b45d57bd")].Value = value;}
			get {
                    if(@Object[new Guid("63a6c5ab-8a8a-7372-efb4-43f0b45d57bd")]==null || @Object[new Guid("63a6c5ab-8a8a-7372-efb4-43f0b45d57bd")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("63a6c5ab-8a8a-7372-efb4-43f0b45d57bd")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: fffa592e-fbd6-d358-bc95-338eba35c811
			Description : Alert Custom Field 3	
*/
		public string AlertCustomField3
		{	
			set {@Object[new Guid("fffa592e-fbd6-d358-bc95-338eba35c811")].Value = value;}
			get {
                    if(@Object[new Guid("fffa592e-fbd6-d358-bc95-338eba35c811")]==null || @Object[new Guid("fffa592e-fbd6-d358-bc95-338eba35c811")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("fffa592e-fbd6-d358-bc95-338eba35c811")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: f8d91c3e-497d-13ee-817f-40c903aec8df
			Description : Alert Custom Field 4	
*/
		public string AlertCustomField4
		{	
			set {@Object[new Guid("f8d91c3e-497d-13ee-817f-40c903aec8df")].Value = value;}
			get {
                    if(@Object[new Guid("f8d91c3e-497d-13ee-817f-40c903aec8df")]==null || @Object[new Guid("f8d91c3e-497d-13ee-817f-40c903aec8df")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("f8d91c3e-497d-13ee-817f-40c903aec8df")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 7afc00c1-5dfb-1b1f-0a6d-dc40d5815ffd
			Description : Alert Custom Field 5	
*/
		public string AlertCustomField5
		{	
			set {@Object[new Guid("7afc00c1-5dfb-1b1f-0a6d-dc40d5815ffd")].Value = value;}
			get {
                    if(@Object[new Guid("7afc00c1-5dfb-1b1f-0a6d-dc40d5815ffd")]==null || @Object[new Guid("7afc00c1-5dfb-1b1f-0a6d-dc40d5815ffd")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("7afc00c1-5dfb-1b1f-0a6d-dc40d5815ffd")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: a50719b2-387a-cbde-5abd-0e62ade8a902
			Description : Alert Custom Field 6	
*/
		public string AlertCustomField6
		{	
			set {@Object[new Guid("a50719b2-387a-cbde-5abd-0e62ade8a902")].Value = value;}
			get {
                    if(@Object[new Guid("a50719b2-387a-cbde-5abd-0e62ade8a902")]==null || @Object[new Guid("a50719b2-387a-cbde-5abd-0e62ade8a902")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("a50719b2-387a-cbde-5abd-0e62ade8a902")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 5025d9f2-9a06-7a80-a006-854a9bc2acef
			Description : Alert Custom Field 7	
*/
		public string AlertCustomField7
		{	
			set {@Object[new Guid("5025d9f2-9a06-7a80-a006-854a9bc2acef")].Value = value;}
			get {
                    if(@Object[new Guid("5025d9f2-9a06-7a80-a006-854a9bc2acef")]==null || @Object[new Guid("5025d9f2-9a06-7a80-a006-854a9bc2acef")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("5025d9f2-9a06-7a80-a006-854a9bc2acef")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 38c1dc79-7852-97d8-ed8c-d0fb00f56c97
			Description : Alert Custom Field 8	
*/
		public string AlertCustomField8
		{	
			set {@Object[new Guid("38c1dc79-7852-97d8-ed8c-d0fb00f56c97")].Value = value;}
			get {
                    if(@Object[new Guid("38c1dc79-7852-97d8-ed8c-d0fb00f56c97")]==null || @Object[new Guid("38c1dc79-7852-97d8-ed8c-d0fb00f56c97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("38c1dc79-7852-97d8-ed8c-d0fb00f56c97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 92119713-175b-afe5-9e65-b7fc5a2a9beb
			Description : Alert Custom Field 9	
*/
		public string AlertCustomField9
		{	
			set {@Object[new Guid("92119713-175b-afe5-9e65-b7fc5a2a9beb")].Value = value;}
			get {
                    if(@Object[new Guid("92119713-175b-afe5-9e65-b7fc5a2a9beb")]==null || @Object[new Guid("92119713-175b-afe5-9e65-b7fc5a2a9beb")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("92119713-175b-afe5-9e65-b7fc5a2a9beb")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 840b34a1-b807-970c-9258-d1ae356ea929
			Description : Alert Identifier	
*/
		public string AlertId
		{	
			set {@Object[new Guid("840b34a1-b807-970c-9258-d1ae356ea929")].Value = value;}
			get {
                    if(@Object[new Guid("840b34a1-b807-970c-9258-d1ae356ea929")]==null || @Object[new Guid("840b34a1-b807-970c-9258-d1ae356ea929")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("840b34a1-b807-970c-9258-d1ae356ea929")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: c7a6ab7a-0b74-6848-02f7-79f7245662d1
			Description : Incident classification category	
*/
		public ManagementPackEnumeration Classification
		{	
			set {@Object[new Guid("c7a6ab7a-0b74-6848-02f7-79f7245662d1")].Value = value;}
			get
			{
				if(@Object[new Guid("c7a6ab7a-0b74-6848-02f7-79f7245662d1")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("c7a6ab7a-0b74-6848-02f7-79f7245662d1")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.DateTime	
			Id 			: 1d859e5b-0686-3ecc-0ef1-4cfce89a73fb
			Description : Closed date	
*/
		public DateTime? ClosedDate
		{	
			set {@Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")].Value = value;}
			get {
                    if(@Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")]==null || @Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d57cb7bc-d1d5-9614-0fe5-4002129da88b
			Description : Alternate contact method	
*/
		public string ContactMethod
		{	
			set {@Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value = value;}
			get {
                    if(@Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")]==null || @Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: ae5c5126-8937-8bdd-11f8-a7641bc06645
			Description : Created date	
*/
		public DateTime? CreatedDate
		{	
			set {@Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value = value;}
			get {
                    if(@Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")]==null || @Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: e5162c95-9469-924c-2298-9e351e0dc383
			Description : Description	
*/
		public string Description
		{	
			set {@Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value = value;}
			get {
                    if(@Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")]==null || @Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: 4e81b48c-0de6-9fc6-b0b8-f3ae96bf2df6
			Description : Escalated	
*/
		public bool? Escalated
		{	
			set {@Object[new Guid("4e81b48c-0de6-9fc6-b0b8-f3ae96bf2df6")].Value = value;}
			get
			{
				if(@Object[new Guid("4e81b48c-0de6-9fc6-b0b8-f3ae96bf2df6")] != null)
				return  (bool?) @Object[new Guid("4e81b48c-0de6-9fc6-b0b8-f3ae96bf2df6")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Boolean	
			Id 			: 1aab055e-b590-e9c8-c7e0-a99ad06443c7
			Description : Has created knowledge article	
*/
		public bool? HasCreatedKnowledgeArticle
		{	
			set {@Object[new Guid("1aab055e-b590-e9c8-c7e0-a99ad06443c7")].Value = value;}
			get
			{
				if(@Object[new Guid("1aab055e-b590-e9c8-c7e0-a99ad06443c7")] != null)
				return  (bool?) @Object[new Guid("1aab055e-b590-e9c8-c7e0-a99ad06443c7")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 28b1c58f-aefa-a449-7496-4805186bd94f
			Description : Work item ID	
*/
		public string Id
		{	
			set {@Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value = value;}
			get {
                    if(@Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")]==null || @Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: a74f8856-ffe2-fcad-67e0-38a7397336b5
			Description : Impact	
*/
		public ManagementPackEnumeration Impact
		{	
			set {@Object[new Guid("a74f8856-ffe2-fcad-67e0-38a7397336b5")].Value = value;}
			get
			{
				if(@Object[new Guid("a74f8856-ffe2-fcad-67e0-38a7397336b5")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("a74f8856-ffe2-fcad-67e0-38a7397336b5")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Enum	
			Id 			: d64785d9-16f0-67d5-23fc-c1047093cbf3
			Description : Last modified source	
*/
		public ManagementPackEnumeration LastModifiedSource
		{	
			set {@Object[new Guid("d64785d9-16f0-67d5-23fc-c1047093cbf3")].Value = value;}
			get
			{
				if(@Object[new Guid("d64785d9-16f0-67d5-23fc-c1047093cbf3")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("d64785d9-16f0-67d5-23fc-c1047093cbf3")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 33b03004-8871-98b1-065b-1e94f51d5f60
			Description : Management Group Name	
*/
		public string ManagementGroupName
		{	
			set {@Object[new Guid("33b03004-8871-98b1-065b-1e94f51d5f60")].Value = value;}
			get {
                    if(@Object[new Guid("33b03004-8871-98b1-065b-1e94f51d5f60")]==null || @Object[new Guid("33b03004-8871-98b1-065b-1e94f51d5f60")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("33b03004-8871-98b1-065b-1e94f51d5f60")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: fb9ba0fa-4cb1-9e6a-e69d-612ac6fed52b
			Description : Management Pack Name	
*/
		public string ManagementPackName
		{	
			set {@Object[new Guid("fb9ba0fa-4cb1-9e6a-e69d-612ac6fed52b")].Value = value;}
			get {
                    if(@Object[new Guid("fb9ba0fa-4cb1-9e6a-e69d-612ac6fed52b")]==null || @Object[new Guid("fb9ba0fa-4cb1-9e6a-e69d-612ac6fed52b")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("fb9ba0fa-4cb1-9e6a-e69d-612ac6fed52b")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 94f27312-3981-0a15-54f0-fa37de59bb3f
			Description : Monitoring Object Identifier	
*/
		public string MonitoringObjectId
		{	
			set {@Object[new Guid("94f27312-3981-0a15-54f0-fa37de59bb3f")].Value = value;}
			get {
                    if(@Object[new Guid("94f27312-3981-0a15-54f0-fa37de59bb3f")]==null || @Object[new Guid("94f27312-3981-0a15-54f0-fa37de59bb3f")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("94f27312-3981-0a15-54f0-fa37de59bb3f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 3017d16b-fbe4-91c2-027b-cd0979f41b31
			Description : Monitoring Rule Identifier	
*/
		public string MonitoringRuleId
		{	
			set {@Object[new Guid("3017d16b-fbe4-91c2-027b-cd0979f41b31")].Value = value;}
			get {
                    if(@Object[new Guid("3017d16b-fbe4-91c2-027b-cd0979f41b31")]==null || @Object[new Guid("3017d16b-fbe4-91c2-027b-cd0979f41b31")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("3017d16b-fbe4-91c2-027b-cd0979f41b31")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: 68f93a71-ab0f-27fd-96ea-a1447117037a
			Description : Needs knowledge article	
*/
		public bool? NeedsKnowledgeArticle
		{	
			set {@Object[new Guid("68f93a71-ab0f-27fd-96ea-a1447117037a")].Value = value;}
			get
			{
				if(@Object[new Guid("68f93a71-ab0f-27fd-96ea-a1447117037a")] != null)
				return  (bool?) @Object[new Guid("68f93a71-ab0f-27fd-96ea-a1447117037a")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Int32	
			Id 			: 983ef3b4-1c7d-c05d-c28c-b89bc56426e2
			Description : Priority	
*/
		public int Priority
		{	
			set {@Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")].Value = value;}
			get {
                    if(@Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")]==null || @Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Int32	
			Id 			: 4b6ac151-91df-982f-2b4e-00410ede33fa
			Description : Repeat Count	
*/
		public int RepeatCount
		{	
			set {@Object[new Guid("4b6ac151-91df-982f-2b4e-00410ede33fa")].Value = value;}
			get {
                    if(@Object[new Guid("4b6ac151-91df-982f-2b4e-00410ede33fa")]==null || @Object[new Guid("4b6ac151-91df-982f-2b4e-00410ede33fa")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("4b6ac151-91df-982f-2b4e-00410ede33fa")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: ff6e5587-525c-3cd8-c508-fb44624de0fc
			Description : Resolution category	
*/
		public ManagementPackEnumeration ResolutionCategory
		{	
			set {@Object[new Guid("ff6e5587-525c-3cd8-c508-fb44624de0fc")].Value = value;}
			get
			{
				if(@Object[new Guid("ff6e5587-525c-3cd8-c508-fb44624de0fc")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("ff6e5587-525c-3cd8-c508-fb44624de0fc")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0
			Description : Resolution description	
*/
		public string ResolutionDescription
		{	
			set {@Object[new Guid("c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0")].Value = value;}
			get {
                    if(@Object[new Guid("c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0")]==null || @Object[new Guid("c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: a1b981cb-fbec-d0df-6465-5212d0076435
			Description : Resolved date	
*/
		public DateTime? ResolvedDate
		{	
			set {@Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")].Value = value;}
			get {
                    if(@Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")]==null || @Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: 1d59dc56-995b-1884-beef-7663a0103e28
			Description : Scheduled end date	
*/
		public DateTime? ScheduledEndDate
		{	
			set {@Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value = value;}
			get {
                    if(@Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")]==null || @Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: fb3b75ce-5483-b5a0-7498-10c585cef3b4
			Description : Scheduled start date	
*/
		public DateTime? ScheduledStartDate
		{	
			set {@Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value = value;}
			get {
                    if(@Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")]==null || @Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 72e56ac1-4147-273f-655a-55dafa41ff97
			Description : Source	
*/
		public ManagementPackEnumeration Source
		{	
			set {@Object[new Guid("72e56ac1-4147-273f-655a-55dafa41ff97")].Value = value;}
			get
			{
				if(@Object[new Guid("72e56ac1-4147-273f-655a-55dafa41ff97")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("72e56ac1-4147-273f-655a-55dafa41ff97")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Enum	
			Id 			: b528d69d-987b-1f9d-6eed-4cced7f53b3c
			Description : Status	
*/
		public ManagementPackEnumeration Status
		{	
			set {@Object[new Guid("b528d69d-987b-1f9d-6eed-4cced7f53b3c")].Value = value;}
			get
			{
				if(@Object[new Guid("b528d69d-987b-1f9d-6eed-4cced7f53b3c")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("b528d69d-987b-1f9d-6eed-4cced7f53b3c")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.DateTime	
			Id 			: 3fd816cd-d07e-8f69-2829-b7789d23a438
			Description : Target resolution time	
*/
		public DateTime? TargetResolutionTime
		{	
			set {@Object[new Guid("3fd816cd-d07e-8f69-2829-b7789d23a438")].Value = value;}
			get {
                    if(@Object[new Guid("3fd816cd-d07e-8f69-2829-b7789d23a438")]==null || @Object[new Guid("3fd816cd-d07e-8f69-2829-b7789d23a438")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("3fd816cd-d07e-8f69-2829-b7789d23a438")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 00cf00f8-9335-2bf7-f9e1-6bd1fd4fb13d
			Description : Support group	
*/
		public ManagementPackEnumeration TierQueue
		{	
			set {@Object[new Guid("00cf00f8-9335-2bf7-f9e1-6bd1fd4fb13d")].Value = value;}
			get
			{
				if(@Object[new Guid("00cf00f8-9335-2bf7-f9e1-6bd1fd4fb13d")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("00cf00f8-9335-2bf7-f9e1-6bd1fd4fb13d")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 029dd446-c76c-ab37-a105-235da4f979dd
			Description : Title	
*/
		public string Title
		{	
			set {@Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value = value;}
			get {
                    if(@Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")]==null || @Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: af230625-9b6c-842f-e22e-06bd25326fa5
			Description : Urgency	
*/
		public ManagementPackEnumeration Urgency
		{	
			set {@Object[new Guid("af230625-9b6c-842f-e22e-06bd25326fa5")].Value = value;}
			get
			{
				if(@Object[new Guid("af230625-9b6c-842f-e22e-06bd25326fa5")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("af230625-9b6c-842f-e22e-06bd25326fa5")].Value;
				else
				return null;
			}
		}
#endregion
#region Relationships
         
        public IComposableProjection AffectedUserProjection
		{
			get{ return emop["RequestedWorkItem"].FirstOrDefault(); }
		}    
            
		public string AffectedUserName  
		{
			get{
                var projection = emop["RequestedWorkItem"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddAffectedUser(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = Microsoft_SystemCenter_WorkItem_SCOMIncidentClass.Relationships.System_WorkItemAffectedUser;
					
			emop.Add(value, endPoint.Target);
		}
		
         
        public IComposableProjection AssignedUserProjection
		{
			get{ return emop["AssignedWorkItem"].FirstOrDefault(); }
		}    
            
		public string AssignedUserName  
		{
			get{
                var projection = emop["AssignedWorkItem"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddAssignedUser(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = Microsoft_SystemCenter_WorkItem_SCOMIncidentClass.Relationships.System_WorkItemAssignedToUser;
					
			emop.Add(value, endPoint.Target);
		}
		
#endregion
		}// end tp class
		}// end mp class
			public class ServiceManager_IncidentManagement_Library
			{
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: ServiceManager.IncidentManagement.Library
			public class System_WorkItem_Incident_DCMProjectionType  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public System_WorkItem_Incident_DCMProjectionType(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("c3eec496-48d1-39c2-a82a-1131d3a31c84");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("7b6d701a-4598-8220-dea8-4ae0504f6f58");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static System_WorkItem_Incident_DCMProjectionType Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, Microsoft_SystemCenter_WorkItem_DCMIncidentClass.GetManagementPackClass());	
					return new  System_WorkItem_Incident_DCMProjectionType(p);
				}
								
				public static System_WorkItem_Incident_DCMProjectionType Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.WorkItem.Incident.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.WorkItem.Incident']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("c3eec496-48d1-39c2-a82a-1131d3a31c84"), property, id);
					return  new System_WorkItem_Incident_DCMProjectionType(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.DateTime	
			Id 			: 665ed498-2551-7559-dce8-493e1ea171df
			Description : Actual end date	
*/
		public DateTime? ActualEndDate
		{	
			set {@Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value = value;}
			get {
                    if(@Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")]==null || @Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: d3c9aa55-bbc0-964e-716b-99defdac4405
			Description : Actual start date	
*/
		public DateTime? ActualStartDate
		{	
			set {@Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value = value;}
			get {
                    if(@Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")]==null || @Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 86307de6-3b31-0073-fd06-841b6b9b2288
			Description : Baseline Identifier	
*/
		public string BaselineId
		{	
			set {@Object[new Guid("86307de6-3b31-0073-fd06-841b6b9b2288")].Value = value;}
			get {
                    if(@Object[new Guid("86307de6-3b31-0073-fd06-841b6b9b2288")]==null || @Object[new Guid("86307de6-3b31-0073-fd06-841b6b9b2288")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("86307de6-3b31-0073-fd06-841b6b9b2288")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 3cc23acd-d9ae-5a5e-f3be-a37e79ae363d
			Description : CI ID	
*/
		public string CIId
		{	
			set {@Object[new Guid("3cc23acd-d9ae-5a5e-f3be-a37e79ae363d")].Value = value;}
			get {
                    if(@Object[new Guid("3cc23acd-d9ae-5a5e-f3be-a37e79ae363d")]==null || @Object[new Guid("3cc23acd-d9ae-5a5e-f3be-a37e79ae363d")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("3cc23acd-d9ae-5a5e-f3be-a37e79ae363d")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: c7a6ab7a-0b74-6848-02f7-79f7245662d1
			Description : Incident classification category	
*/
		public ManagementPackEnumeration Classification
		{	
			set {@Object[new Guid("c7a6ab7a-0b74-6848-02f7-79f7245662d1")].Value = value;}
			get
			{
				if(@Object[new Guid("c7a6ab7a-0b74-6848-02f7-79f7245662d1")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("c7a6ab7a-0b74-6848-02f7-79f7245662d1")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.DateTime	
			Id 			: 1d859e5b-0686-3ecc-0ef1-4cfce89a73fb
			Description : Closed date	
*/
		public DateTime? ClosedDate
		{	
			set {@Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")].Value = value;}
			get {
                    if(@Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")]==null || @Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.IO.Stream	
			Id 			: 2da2dd13-40c1-3074-d303-6c7866044e0f
			Description : Compliance Status Details	
*/
		public Stream ComplianceStatusDetails
		{	
			set {@Object[new Guid("2da2dd13-40c1-3074-d303-6c7866044e0f")].Value = value;}
			get {
                    if(@Object[new Guid("2da2dd13-40c1-3074-d303-6c7866044e0f")]==null || @Object[new Guid("2da2dd13-40c1-3074-d303-6c7866044e0f")].Value==null) 
                        return default(Stream) ;    
                    return (Stream) @Object[new Guid("2da2dd13-40c1-3074-d303-6c7866044e0f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 11531973-10b3-f9f7-a495-9af956e3882c
			Description : Computer Name	
*/
		public string ComputerName
		{	
			set {@Object[new Guid("11531973-10b3-f9f7-a495-9af956e3882c")].Value = value;}
			get {
                    if(@Object[new Guid("11531973-10b3-f9f7-a495-9af956e3882c")]==null || @Object[new Guid("11531973-10b3-f9f7-a495-9af956e3882c")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("11531973-10b3-f9f7-a495-9af956e3882c")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d57cb7bc-d1d5-9614-0fe5-4002129da88b
			Description : Alternate contact method	
*/
		public string ContactMethod
		{	
			set {@Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value = value;}
			get {
                    if(@Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")]==null || @Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: ae5c5126-8937-8bdd-11f8-a7641bc06645
			Description : Created date	
*/
		public DateTime? CreatedDate
		{	
			set {@Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value = value;}
			get {
                    if(@Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")]==null || @Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: e5162c95-9469-924c-2298-9e351e0dc383
			Description : Description	
*/
		public string Description
		{	
			set {@Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value = value;}
			get {
                    if(@Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")]==null || @Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: 4e81b48c-0de6-9fc6-b0b8-f3ae96bf2df6
			Description : Escalated	
*/
		public bool? Escalated
		{	
			set {@Object[new Guid("4e81b48c-0de6-9fc6-b0b8-f3ae96bf2df6")].Value = value;}
			get
			{
				if(@Object[new Guid("4e81b48c-0de6-9fc6-b0b8-f3ae96bf2df6")] != null)
				return  (bool?) @Object[new Guid("4e81b48c-0de6-9fc6-b0b8-f3ae96bf2df6")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Boolean	
			Id 			: 1aab055e-b590-e9c8-c7e0-a99ad06443c7
			Description : Has created knowledge article	
*/
		public bool? HasCreatedKnowledgeArticle
		{	
			set {@Object[new Guid("1aab055e-b590-e9c8-c7e0-a99ad06443c7")].Value = value;}
			get
			{
				if(@Object[new Guid("1aab055e-b590-e9c8-c7e0-a99ad06443c7")] != null)
				return  (bool?) @Object[new Guid("1aab055e-b590-e9c8-c7e0-a99ad06443c7")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 28b1c58f-aefa-a449-7496-4805186bd94f
			Description : Work item ID	
*/
		public string Id
		{	
			set {@Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value = value;}
			get {
                    if(@Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")]==null || @Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: a74f8856-ffe2-fcad-67e0-38a7397336b5
			Description : Impact	
*/
		public ManagementPackEnumeration Impact
		{	
			set {@Object[new Guid("a74f8856-ffe2-fcad-67e0-38a7397336b5")].Value = value;}
			get
			{
				if(@Object[new Guid("a74f8856-ffe2-fcad-67e0-38a7397336b5")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("a74f8856-ffe2-fcad-67e0-38a7397336b5")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.DateTime	
			Id 			: aafa7462-d3af-1686-7386-4cec108ff546
			Description : Last Compliance Scan Time	
*/
		public DateTime? LastComplianceScanTime
		{	
			set {@Object[new Guid("aafa7462-d3af-1686-7386-4cec108ff546")].Value = value;}
			get {
                    if(@Object[new Guid("aafa7462-d3af-1686-7386-4cec108ff546")]==null || @Object[new Guid("aafa7462-d3af-1686-7386-4cec108ff546")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("aafa7462-d3af-1686-7386-4cec108ff546")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: d64785d9-16f0-67d5-23fc-c1047093cbf3
			Description : Last modified source	
*/
		public ManagementPackEnumeration LastModifiedSource
		{	
			set {@Object[new Guid("d64785d9-16f0-67d5-23fc-c1047093cbf3")].Value = value;}
			get
			{
				if(@Object[new Guid("d64785d9-16f0-67d5-23fc-c1047093cbf3")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("d64785d9-16f0-67d5-23fc-c1047093cbf3")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Int32	
			Id 			: beb725e5-3761-5fe7-0949-bb54811b7174
			Description : Max Noncompliance Criticality	
*/
		public int MaxNonComplianceCriticality
		{	
			set {@Object[new Guid("beb725e5-3761-5fe7-0949-bb54811b7174")].Value = value;}
			get {
                    if(@Object[new Guid("beb725e5-3761-5fe7-0949-bb54811b7174")]==null || @Object[new Guid("beb725e5-3761-5fe7-0949-bb54811b7174")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("beb725e5-3761-5fe7-0949-bb54811b7174")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: 68f93a71-ab0f-27fd-96ea-a1447117037a
			Description : Needs knowledge article	
*/
		public bool? NeedsKnowledgeArticle
		{	
			set {@Object[new Guid("68f93a71-ab0f-27fd-96ea-a1447117037a")].Value = value;}
			get
			{
				if(@Object[new Guid("68f93a71-ab0f-27fd-96ea-a1447117037a")] != null)
				return  (bool?) @Object[new Guid("68f93a71-ab0f-27fd-96ea-a1447117037a")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Int32	
			Id 			: 983ef3b4-1c7d-c05d-c28c-b89bc56426e2
			Description : Priority	
*/
		public int Priority
		{	
			set {@Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")].Value = value;}
			get {
                    if(@Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")]==null || @Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: ff6e5587-525c-3cd8-c508-fb44624de0fc
			Description : Resolution category	
*/
		public ManagementPackEnumeration ResolutionCategory
		{	
			set {@Object[new Guid("ff6e5587-525c-3cd8-c508-fb44624de0fc")].Value = value;}
			get
			{
				if(@Object[new Guid("ff6e5587-525c-3cd8-c508-fb44624de0fc")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("ff6e5587-525c-3cd8-c508-fb44624de0fc")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0
			Description : Resolution description	
*/
		public string ResolutionDescription
		{	
			set {@Object[new Guid("c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0")].Value = value;}
			get {
                    if(@Object[new Guid("c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0")]==null || @Object[new Guid("c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: a1b981cb-fbec-d0df-6465-5212d0076435
			Description : Resolved date	
*/
		public DateTime? ResolvedDate
		{	
			set {@Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")].Value = value;}
			get {
                    if(@Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")]==null || @Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: 1d59dc56-995b-1884-beef-7663a0103e28
			Description : Scheduled end date	
*/
		public DateTime? ScheduledEndDate
		{	
			set {@Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value = value;}
			get {
                    if(@Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")]==null || @Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: fb3b75ce-5483-b5a0-7498-10c585cef3b4
			Description : Scheduled start date	
*/
		public DateTime? ScheduledStartDate
		{	
			set {@Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value = value;}
			get {
                    if(@Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")]==null || @Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 6a385d2c-ff33-460e-f6d9-890befac6dfa
			Description : Site Identifier	
*/
		public string SiteId
		{	
			set {@Object[new Guid("6a385d2c-ff33-460e-f6d9-890befac6dfa")].Value = value;}
			get {
                    if(@Object[new Guid("6a385d2c-ff33-460e-f6d9-890befac6dfa")]==null || @Object[new Guid("6a385d2c-ff33-460e-f6d9-890befac6dfa")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("6a385d2c-ff33-460e-f6d9-890befac6dfa")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 72e56ac1-4147-273f-655a-55dafa41ff97
			Description : Source	
*/
		public ManagementPackEnumeration Source
		{	
			set {@Object[new Guid("72e56ac1-4147-273f-655a-55dafa41ff97")].Value = value;}
			get
			{
				if(@Object[new Guid("72e56ac1-4147-273f-655a-55dafa41ff97")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("72e56ac1-4147-273f-655a-55dafa41ff97")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Enum	
			Id 			: b528d69d-987b-1f9d-6eed-4cced7f53b3c
			Description : Status	
*/
		public ManagementPackEnumeration Status
		{	
			set {@Object[new Guid("b528d69d-987b-1f9d-6eed-4cced7f53b3c")].Value = value;}
			get
			{
				if(@Object[new Guid("b528d69d-987b-1f9d-6eed-4cced7f53b3c")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("b528d69d-987b-1f9d-6eed-4cced7f53b3c")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.DateTime	
			Id 			: 3fd816cd-d07e-8f69-2829-b7789d23a438
			Description : Target resolution time	
*/
		public DateTime? TargetResolutionTime
		{	
			set {@Object[new Guid("3fd816cd-d07e-8f69-2829-b7789d23a438")].Value = value;}
			get {
                    if(@Object[new Guid("3fd816cd-d07e-8f69-2829-b7789d23a438")]==null || @Object[new Guid("3fd816cd-d07e-8f69-2829-b7789d23a438")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("3fd816cd-d07e-8f69-2829-b7789d23a438")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 00cf00f8-9335-2bf7-f9e1-6bd1fd4fb13d
			Description : Support group	
*/
		public ManagementPackEnumeration TierQueue
		{	
			set {@Object[new Guid("00cf00f8-9335-2bf7-f9e1-6bd1fd4fb13d")].Value = value;}
			get
			{
				if(@Object[new Guid("00cf00f8-9335-2bf7-f9e1-6bd1fd4fb13d")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("00cf00f8-9335-2bf7-f9e1-6bd1fd4fb13d")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 029dd446-c76c-ab37-a105-235da4f979dd
			Description : Title	
*/
		public string Title
		{	
			set {@Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value = value;}
			get {
                    if(@Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")]==null || @Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: af230625-9b6c-842f-e22e-06bd25326fa5
			Description : Urgency	
*/
		public ManagementPackEnumeration Urgency
		{	
			set {@Object[new Guid("af230625-9b6c-842f-e22e-06bd25326fa5")].Value = value;}
			get
			{
				if(@Object[new Guid("af230625-9b6c-842f-e22e-06bd25326fa5")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("af230625-9b6c-842f-e22e-06bd25326fa5")].Value;
				else
				return null;
			}
		}
#endregion
#region Relationships
         
        public IComposableProjection PrimaryOwnerProjection
		{
			get{ return emop["RelatesToIncident"].FirstOrDefault(); }
		}    
            
		public string PrimaryOwnerName  
		{
			get{
                var projection = emop["RelatesToIncident"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddPrimaryOwner(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = Microsoft_SystemCenter_WorkItem_DCMIncidentClass.Relationships.System_WorkItem_IncidentPrimaryOwner;
					
			emop.Add(value, endPoint.Target);
		}
		
         
        public IComposableProjection AffectedUserProjection
		{
			get{ return emop["RequestedWorkItem"].FirstOrDefault(); }
		}    
            
		public string AffectedUserName  
		{
			get{
                var projection = emop["RequestedWorkItem"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddAffectedUser(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = Microsoft_SystemCenter_WorkItem_DCMIncidentClass.Relationships.System_WorkItemAffectedUser;
					
			emop.Add(value, endPoint.Target);
		}
		
         
        public IComposableProjection AssignedUserProjection
		{
			get{ return emop["AssignedWorkItem"].FirstOrDefault(); }
		}    
            
		public string AssignedUserName  
		{
			get{
                var projection = emop["AssignedWorkItem"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddAssignedUser(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = Microsoft_SystemCenter_WorkItem_DCMIncidentClass.Relationships.System_WorkItemAssignedToUser;
					
			emop.Add(value, endPoint.Target);
		}
		
         
        public IComposableProjection CreatedByUserProjection
		{
			get{ return emop["CreatedWorkItem"].FirstOrDefault(); }
		}    
            
		public string CreatedByUserName  
		{
			get{
                var projection = emop["CreatedWorkItem"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddCreatedByUser(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = Microsoft_SystemCenter_WorkItem_DCMIncidentClass.Relationships.System_WorkItemCreatedByUser;
					
			emop.Add(value, endPoint.Target);
		}
		
         
        public IComposableProjection ClosedByUserProjection
		{
			get{ return emop["RelatesToTroubleTicket"].FirstOrDefault(); }
		}    
            
		public string ClosedByUserName  
		{
			get{
                var projection = emop["RelatesToTroubleTicket"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddClosedByUser(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = Microsoft_SystemCenter_WorkItem_DCMIncidentClass.Relationships.System_WorkItem_TroubleTicketClosedByUser;
					
			emop.Add(value, endPoint.Target);
		}
		
         
        public IComposableProjection ResolvedByUserProjection
		{
			get{ return emop["RelatesToTroubleTicket"].FirstOrDefault(); }
		}    
            
		public string ResolvedByUserName  
		{
			get{
                var projection = emop["RelatesToTroubleTicket"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddResolvedByUser(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = Microsoft_SystemCenter_WorkItem_DCMIncidentClass.Relationships.System_WorkItem_TroubleTicketResolvedByUser;
					
			emop.Add(value, endPoint.Target);
		}
		
		public void AddActionLogs(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = Microsoft_SystemCenter_WorkItem_DCMIncidentClass.Relationships.System_WorkItem_TroubleTicketHasActionLog;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> ActionLogsProjection  
		{
			get{ return emop["AppliesToTroubleTicket"];}
		}
				
		public void AddUserComments(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = Microsoft_SystemCenter_WorkItem_DCMIncidentClass.Relationships.System_WorkItem_TroubleTicketHasUserComment;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> UserCommentsProjection  
		{
			get{ return emop["AppliesToTroubleTicket"];}
		}
				
		public void AddAnalystComments(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = Microsoft_SystemCenter_WorkItem_DCMIncidentClass.Relationships.System_WorkItem_TroubleTicketHasAnalystComment;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> AnalystCommentsProjection  
		{
			get{ return emop["AppliesToTroubleTicket"];}
		}
				
		public void AddSMTPNotifications(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = Microsoft_SystemCenter_WorkItem_DCMIncidentClass.Relationships.System_WorkItem_TroubleTicketHasNotificationLog;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> SMTPNotificationsProjection  
		{
			get{ return emop["AppliesToTroubleTicket"];}
		}
				
		public void AddActivities(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = Microsoft_SystemCenter_WorkItem_DCMIncidentClass.Relationships.System_WorkItemContainsActivity;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> ActivitiesProjection  
		{
			get{ return emop["Activity"];}
		}
				
		public void AddRelatedWorkItems(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = Microsoft_SystemCenter_WorkItem_DCMIncidentClass.Relationships.System_WorkItemRelatesToWorkItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> RelatedWorkItemsProjection  
		{
			get{ return emop["RelatesToWorkItem_"];}
		}
				
		public void AddRelatedWorkItemsSource(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = Microsoft_SystemCenter_WorkItem_DCMIncidentClass.Relationships.System_WorkItemRelatesToWorkItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> RelatedWorkItemsSourceProjection  
		{
			get{ return emop["RelatesToWorkItem"];}
		}
				
		public void AddAffectedConfigItems(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = Microsoft_SystemCenter_WorkItem_DCMIncidentClass.Relationships.System_WorkItemAboutConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> AffectedConfigItemsProjection  
		{
			get{ return emop["HasRelatedWorkItems"];}
		}
				
		public void AddRelatedConfigItems(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = Microsoft_SystemCenter_WorkItem_DCMIncidentClass.Relationships.System_WorkItemRelatesToConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> RelatedConfigItemsProjection  
		{
			get{ return emop["RelatesToConfigItem"];}
		}
				
		public void AddRelatedServiceRequests(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = Microsoft_SystemCenter_WorkItem_DCMIncidentClass.Relationships.System_WorkItemAboutConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> RelatedServiceRequestsProjection  
		{
			get{ return emop["HasRelatedWorkItems"];}
		}
				
		public void AddRelatedKnowledgeArticles(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = Microsoft_SystemCenter_WorkItem_DCMIncidentClass.Relationships.System_EntityLinksToKnowledgeDocument;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> RelatedKnowledgeArticlesProjection  
		{
			get{ return emop["KnowledgeDocument"];}
		}
				
		public void AddFileAttachments(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = Microsoft_SystemCenter_WorkItem_DCMIncidentClass.Relationships.System_WorkItemHasFileAttachment;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> FileAttachmentsProjection  
		{
			get{ return emop["FileAttachment"];}
		}
				
         
        public IComposableProjection BaselineProjection
		{
			get{ return emop["Baseline"].FirstOrDefault(); }
		}    
            
		public string BaselineName  
		{
			get{
                var projection = emop["Baseline"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddBaseline(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = Microsoft_SystemCenter_WorkItem_DCMIncidentClass.Relationships.Microsoft_SystemCenter_WorkItem_DCMIncident_Refers_Baseline_CI;
					
			emop.Add(value, endPoint.Target);
		}
		
         
        public IComposableProjection ConfigurationCiProjection
		{
			get{ return emop["ConfigurationCI"].FirstOrDefault(); }
		}    
            
		public string ConfigurationCiName  
		{
			get{
                var projection = emop["ConfigurationCI"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddConfigurationCi(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = Microsoft_SystemCenter_WorkItem_DCMIncidentClass.Relationships.Microsoft_SystemCenter_WorkItem_DCMIncident_Refers_Configuration_CI;
					
			emop.Add(value, endPoint.Target);
		}
		
         
        public IComposableProjection AffectedComputerProjection
		{
			get{ return emop["NonComplianceCI"].FirstOrDefault(); }
		}    
            
		public string AffectedComputerName  
		{
			get{
                var projection = emop["NonComplianceCI"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddAffectedComputer(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = Microsoft_SystemCenter_WorkItem_DCMIncidentClass.Relationships.Microsoft_SystemCenter_WorkItem_DCMIncident_Refers_NonComplianceComputer;
					
			emop.Add(value, endPoint.Target);
		}
		
#endregion
		}// end tp class
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: ServiceManager.IncidentManagement.Library
			public class System_WorkItem_Incident_Activities_ProjectionType  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public System_WorkItem_Incident_Activities_ProjectionType(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("e3003765-95da-3c80-2716-530515a10732");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("7b6d701a-4598-8220-dea8-4ae0504f6f58");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static System_WorkItem_Incident_Activities_ProjectionType Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, System_WorkItem_IncidentClass.GetManagementPackClass());	
					return new  System_WorkItem_Incident_Activities_ProjectionType(p);
				}
								
				public static System_WorkItem_Incident_Activities_ProjectionType Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.WorkItem.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.WorkItem.TroubleTicket']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("e3003765-95da-3c80-2716-530515a10732"), property, id);
					return  new System_WorkItem_Incident_Activities_ProjectionType(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.DateTime	
			Id 			: 665ed498-2551-7559-dce8-493e1ea171df
			Description : Actual end date	
*/
		public DateTime? ActualEndDate
		{	
			set {@Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value = value;}
			get {
                    if(@Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")]==null || @Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: d3c9aa55-bbc0-964e-716b-99defdac4405
			Description : Actual start date	
*/
		public DateTime? ActualStartDate
		{	
			set {@Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value = value;}
			get {
                    if(@Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")]==null || @Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: c7a6ab7a-0b74-6848-02f7-79f7245662d1
			Description : Incident classification category	
*/
		public ManagementPackEnumeration Classification
		{	
			set {@Object[new Guid("c7a6ab7a-0b74-6848-02f7-79f7245662d1")].Value = value;}
			get
			{
				if(@Object[new Guid("c7a6ab7a-0b74-6848-02f7-79f7245662d1")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("c7a6ab7a-0b74-6848-02f7-79f7245662d1")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.DateTime	
			Id 			: 1d859e5b-0686-3ecc-0ef1-4cfce89a73fb
			Description : Closed date	
*/
		public DateTime? ClosedDate
		{	
			set {@Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")].Value = value;}
			get {
                    if(@Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")]==null || @Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d57cb7bc-d1d5-9614-0fe5-4002129da88b
			Description : Alternate contact method	
*/
		public string ContactMethod
		{	
			set {@Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value = value;}
			get {
                    if(@Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")]==null || @Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: ae5c5126-8937-8bdd-11f8-a7641bc06645
			Description : Created date	
*/
		public DateTime? CreatedDate
		{	
			set {@Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value = value;}
			get {
                    if(@Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")]==null || @Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: e5162c95-9469-924c-2298-9e351e0dc383
			Description : Description	
*/
		public string Description
		{	
			set {@Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value = value;}
			get {
                    if(@Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")]==null || @Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: 4e81b48c-0de6-9fc6-b0b8-f3ae96bf2df6
			Description : Escalated	
*/
		public bool? Escalated
		{	
			set {@Object[new Guid("4e81b48c-0de6-9fc6-b0b8-f3ae96bf2df6")].Value = value;}
			get
			{
				if(@Object[new Guid("4e81b48c-0de6-9fc6-b0b8-f3ae96bf2df6")] != null)
				return  (bool?) @Object[new Guid("4e81b48c-0de6-9fc6-b0b8-f3ae96bf2df6")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Boolean	
			Id 			: 1aab055e-b590-e9c8-c7e0-a99ad06443c7
			Description : Has created knowledge article	
*/
		public bool? HasCreatedKnowledgeArticle
		{	
			set {@Object[new Guid("1aab055e-b590-e9c8-c7e0-a99ad06443c7")].Value = value;}
			get
			{
				if(@Object[new Guid("1aab055e-b590-e9c8-c7e0-a99ad06443c7")] != null)
				return  (bool?) @Object[new Guid("1aab055e-b590-e9c8-c7e0-a99ad06443c7")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 28b1c58f-aefa-a449-7496-4805186bd94f
			Description : Work item ID	
*/
		public string Id
		{	
			set {@Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value = value;}
			get {
                    if(@Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")]==null || @Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: a74f8856-ffe2-fcad-67e0-38a7397336b5
			Description : Impact	
*/
		public ManagementPackEnumeration Impact
		{	
			set {@Object[new Guid("a74f8856-ffe2-fcad-67e0-38a7397336b5")].Value = value;}
			get
			{
				if(@Object[new Guid("a74f8856-ffe2-fcad-67e0-38a7397336b5")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("a74f8856-ffe2-fcad-67e0-38a7397336b5")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Enum	
			Id 			: d64785d9-16f0-67d5-23fc-c1047093cbf3
			Description : Last modified source	
*/
		public ManagementPackEnumeration LastModifiedSource
		{	
			set {@Object[new Guid("d64785d9-16f0-67d5-23fc-c1047093cbf3")].Value = value;}
			get
			{
				if(@Object[new Guid("d64785d9-16f0-67d5-23fc-c1047093cbf3")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("d64785d9-16f0-67d5-23fc-c1047093cbf3")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Boolean	
			Id 			: 68f93a71-ab0f-27fd-96ea-a1447117037a
			Description : Needs knowledge article	
*/
		public bool? NeedsKnowledgeArticle
		{	
			set {@Object[new Guid("68f93a71-ab0f-27fd-96ea-a1447117037a")].Value = value;}
			get
			{
				if(@Object[new Guid("68f93a71-ab0f-27fd-96ea-a1447117037a")] != null)
				return  (bool?) @Object[new Guid("68f93a71-ab0f-27fd-96ea-a1447117037a")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Int32	
			Id 			: 983ef3b4-1c7d-c05d-c28c-b89bc56426e2
			Description : Priority	
*/
		public int Priority
		{	
			set {@Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")].Value = value;}
			get {
                    if(@Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")]==null || @Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: ff6e5587-525c-3cd8-c508-fb44624de0fc
			Description : Resolution category	
*/
		public ManagementPackEnumeration ResolutionCategory
		{	
			set {@Object[new Guid("ff6e5587-525c-3cd8-c508-fb44624de0fc")].Value = value;}
			get
			{
				if(@Object[new Guid("ff6e5587-525c-3cd8-c508-fb44624de0fc")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("ff6e5587-525c-3cd8-c508-fb44624de0fc")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0
			Description : Resolution description	
*/
		public string ResolutionDescription
		{	
			set {@Object[new Guid("c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0")].Value = value;}
			get {
                    if(@Object[new Guid("c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0")]==null || @Object[new Guid("c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: a1b981cb-fbec-d0df-6465-5212d0076435
			Description : Resolved date	
*/
		public DateTime? ResolvedDate
		{	
			set {@Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")].Value = value;}
			get {
                    if(@Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")]==null || @Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: 1d59dc56-995b-1884-beef-7663a0103e28
			Description : Scheduled end date	
*/
		public DateTime? ScheduledEndDate
		{	
			set {@Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value = value;}
			get {
                    if(@Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")]==null || @Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: fb3b75ce-5483-b5a0-7498-10c585cef3b4
			Description : Scheduled start date	
*/
		public DateTime? ScheduledStartDate
		{	
			set {@Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value = value;}
			get {
                    if(@Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")]==null || @Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 72e56ac1-4147-273f-655a-55dafa41ff97
			Description : Source	
*/
		public ManagementPackEnumeration Source
		{	
			set {@Object[new Guid("72e56ac1-4147-273f-655a-55dafa41ff97")].Value = value;}
			get
			{
				if(@Object[new Guid("72e56ac1-4147-273f-655a-55dafa41ff97")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("72e56ac1-4147-273f-655a-55dafa41ff97")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Enum	
			Id 			: b528d69d-987b-1f9d-6eed-4cced7f53b3c
			Description : Status	
*/
		public ManagementPackEnumeration Status
		{	
			set {@Object[new Guid("b528d69d-987b-1f9d-6eed-4cced7f53b3c")].Value = value;}
			get
			{
				if(@Object[new Guid("b528d69d-987b-1f9d-6eed-4cced7f53b3c")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("b528d69d-987b-1f9d-6eed-4cced7f53b3c")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.DateTime	
			Id 			: 3fd816cd-d07e-8f69-2829-b7789d23a438
			Description : Target resolution time	
*/
		public DateTime? TargetResolutionTime
		{	
			set {@Object[new Guid("3fd816cd-d07e-8f69-2829-b7789d23a438")].Value = value;}
			get {
                    if(@Object[new Guid("3fd816cd-d07e-8f69-2829-b7789d23a438")]==null || @Object[new Guid("3fd816cd-d07e-8f69-2829-b7789d23a438")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("3fd816cd-d07e-8f69-2829-b7789d23a438")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 00cf00f8-9335-2bf7-f9e1-6bd1fd4fb13d
			Description : Support group	
*/
		public ManagementPackEnumeration TierQueue
		{	
			set {@Object[new Guid("00cf00f8-9335-2bf7-f9e1-6bd1fd4fb13d")].Value = value;}
			get
			{
				if(@Object[new Guid("00cf00f8-9335-2bf7-f9e1-6bd1fd4fb13d")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("00cf00f8-9335-2bf7-f9e1-6bd1fd4fb13d")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 029dd446-c76c-ab37-a105-235da4f979dd
			Description : Title	
*/
		public string Title
		{	
			set {@Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value = value;}
			get {
                    if(@Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")]==null || @Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: af230625-9b6c-842f-e22e-06bd25326fa5
			Description : Urgency	
*/
		public ManagementPackEnumeration Urgency
		{	
			set {@Object[new Guid("af230625-9b6c-842f-e22e-06bd25326fa5")].Value = value;}
			get
			{
				if(@Object[new Guid("af230625-9b6c-842f-e22e-06bd25326fa5")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("af230625-9b6c-842f-e22e-06bd25326fa5")].Value;
				else
				return null;
			}
		}
#endregion
#region Relationships
		public void AddActivities(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_IncidentClass.Relationships.System_WorkItemContainsActivity;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> ActivitiesProjection  
		{
			get{ return emop["Activity"];}
		}
				
#endregion
		}// end tp class
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: ServiceManager.IncidentManagement.Library
			public class System_WorkItem_Incident_ResolutionAndBillableLog_ProjectionType  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public System_WorkItem_Incident_ResolutionAndBillableLog_ProjectionType(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("86b0f440-677f-ae8d-b5dc-9fa60edb04e5");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("7b6d701a-4598-8220-dea8-4ae0504f6f58");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static System_WorkItem_Incident_ResolutionAndBillableLog_ProjectionType Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, System_WorkItem_IncidentClass.GetManagementPackClass());	
					return new  System_WorkItem_Incident_ResolutionAndBillableLog_ProjectionType(p);
				}
								
				public static System_WorkItem_Incident_ResolutionAndBillableLog_ProjectionType Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.WorkItem.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.WorkItem.TroubleTicket']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("86b0f440-677f-ae8d-b5dc-9fa60edb04e5"), property, id);
					return  new System_WorkItem_Incident_ResolutionAndBillableLog_ProjectionType(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.DateTime	
			Id 			: 665ed498-2551-7559-dce8-493e1ea171df
			Description : Actual end date	
*/
		public DateTime? ActualEndDate
		{	
			set {@Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value = value;}
			get {
                    if(@Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")]==null || @Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: d3c9aa55-bbc0-964e-716b-99defdac4405
			Description : Actual start date	
*/
		public DateTime? ActualStartDate
		{	
			set {@Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value = value;}
			get {
                    if(@Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")]==null || @Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: c7a6ab7a-0b74-6848-02f7-79f7245662d1
			Description : Incident classification category	
*/
		public ManagementPackEnumeration Classification
		{	
			set {@Object[new Guid("c7a6ab7a-0b74-6848-02f7-79f7245662d1")].Value = value;}
			get
			{
				if(@Object[new Guid("c7a6ab7a-0b74-6848-02f7-79f7245662d1")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("c7a6ab7a-0b74-6848-02f7-79f7245662d1")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.DateTime	
			Id 			: 1d859e5b-0686-3ecc-0ef1-4cfce89a73fb
			Description : Closed date	
*/
		public DateTime? ClosedDate
		{	
			set {@Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")].Value = value;}
			get {
                    if(@Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")]==null || @Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d57cb7bc-d1d5-9614-0fe5-4002129da88b
			Description : Alternate contact method	
*/
		public string ContactMethod
		{	
			set {@Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value = value;}
			get {
                    if(@Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")]==null || @Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: ae5c5126-8937-8bdd-11f8-a7641bc06645
			Description : Created date	
*/
		public DateTime? CreatedDate
		{	
			set {@Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value = value;}
			get {
                    if(@Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")]==null || @Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: e5162c95-9469-924c-2298-9e351e0dc383
			Description : Description	
*/
		public string Description
		{	
			set {@Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value = value;}
			get {
                    if(@Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")]==null || @Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: 4e81b48c-0de6-9fc6-b0b8-f3ae96bf2df6
			Description : Escalated	
*/
		public bool? Escalated
		{	
			set {@Object[new Guid("4e81b48c-0de6-9fc6-b0b8-f3ae96bf2df6")].Value = value;}
			get
			{
				if(@Object[new Guid("4e81b48c-0de6-9fc6-b0b8-f3ae96bf2df6")] != null)
				return  (bool?) @Object[new Guid("4e81b48c-0de6-9fc6-b0b8-f3ae96bf2df6")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Boolean	
			Id 			: 1aab055e-b590-e9c8-c7e0-a99ad06443c7
			Description : Has created knowledge article	
*/
		public bool? HasCreatedKnowledgeArticle
		{	
			set {@Object[new Guid("1aab055e-b590-e9c8-c7e0-a99ad06443c7")].Value = value;}
			get
			{
				if(@Object[new Guid("1aab055e-b590-e9c8-c7e0-a99ad06443c7")] != null)
				return  (bool?) @Object[new Guid("1aab055e-b590-e9c8-c7e0-a99ad06443c7")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 28b1c58f-aefa-a449-7496-4805186bd94f
			Description : Work item ID	
*/
		public string Id
		{	
			set {@Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value = value;}
			get {
                    if(@Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")]==null || @Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: a74f8856-ffe2-fcad-67e0-38a7397336b5
			Description : Impact	
*/
		public ManagementPackEnumeration Impact
		{	
			set {@Object[new Guid("a74f8856-ffe2-fcad-67e0-38a7397336b5")].Value = value;}
			get
			{
				if(@Object[new Guid("a74f8856-ffe2-fcad-67e0-38a7397336b5")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("a74f8856-ffe2-fcad-67e0-38a7397336b5")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Enum	
			Id 			: d64785d9-16f0-67d5-23fc-c1047093cbf3
			Description : Last modified source	
*/
		public ManagementPackEnumeration LastModifiedSource
		{	
			set {@Object[new Guid("d64785d9-16f0-67d5-23fc-c1047093cbf3")].Value = value;}
			get
			{
				if(@Object[new Guid("d64785d9-16f0-67d5-23fc-c1047093cbf3")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("d64785d9-16f0-67d5-23fc-c1047093cbf3")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Boolean	
			Id 			: 68f93a71-ab0f-27fd-96ea-a1447117037a
			Description : Needs knowledge article	
*/
		public bool? NeedsKnowledgeArticle
		{	
			set {@Object[new Guid("68f93a71-ab0f-27fd-96ea-a1447117037a")].Value = value;}
			get
			{
				if(@Object[new Guid("68f93a71-ab0f-27fd-96ea-a1447117037a")] != null)
				return  (bool?) @Object[new Guid("68f93a71-ab0f-27fd-96ea-a1447117037a")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Int32	
			Id 			: 983ef3b4-1c7d-c05d-c28c-b89bc56426e2
			Description : Priority	
*/
		public int Priority
		{	
			set {@Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")].Value = value;}
			get {
                    if(@Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")]==null || @Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: ff6e5587-525c-3cd8-c508-fb44624de0fc
			Description : Resolution category	
*/
		public ManagementPackEnumeration ResolutionCategory
		{	
			set {@Object[new Guid("ff6e5587-525c-3cd8-c508-fb44624de0fc")].Value = value;}
			get
			{
				if(@Object[new Guid("ff6e5587-525c-3cd8-c508-fb44624de0fc")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("ff6e5587-525c-3cd8-c508-fb44624de0fc")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0
			Description : Resolution description	
*/
		public string ResolutionDescription
		{	
			set {@Object[new Guid("c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0")].Value = value;}
			get {
                    if(@Object[new Guid("c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0")]==null || @Object[new Guid("c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: a1b981cb-fbec-d0df-6465-5212d0076435
			Description : Resolved date	
*/
		public DateTime? ResolvedDate
		{	
			set {@Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")].Value = value;}
			get {
                    if(@Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")]==null || @Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: 1d59dc56-995b-1884-beef-7663a0103e28
			Description : Scheduled end date	
*/
		public DateTime? ScheduledEndDate
		{	
			set {@Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value = value;}
			get {
                    if(@Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")]==null || @Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: fb3b75ce-5483-b5a0-7498-10c585cef3b4
			Description : Scheduled start date	
*/
		public DateTime? ScheduledStartDate
		{	
			set {@Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value = value;}
			get {
                    if(@Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")]==null || @Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 72e56ac1-4147-273f-655a-55dafa41ff97
			Description : Source	
*/
		public ManagementPackEnumeration Source
		{	
			set {@Object[new Guid("72e56ac1-4147-273f-655a-55dafa41ff97")].Value = value;}
			get
			{
				if(@Object[new Guid("72e56ac1-4147-273f-655a-55dafa41ff97")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("72e56ac1-4147-273f-655a-55dafa41ff97")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Enum	
			Id 			: b528d69d-987b-1f9d-6eed-4cced7f53b3c
			Description : Status	
*/
		public ManagementPackEnumeration Status
		{	
			set {@Object[new Guid("b528d69d-987b-1f9d-6eed-4cced7f53b3c")].Value = value;}
			get
			{
				if(@Object[new Guid("b528d69d-987b-1f9d-6eed-4cced7f53b3c")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("b528d69d-987b-1f9d-6eed-4cced7f53b3c")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.DateTime	
			Id 			: 3fd816cd-d07e-8f69-2829-b7789d23a438
			Description : Target resolution time	
*/
		public DateTime? TargetResolutionTime
		{	
			set {@Object[new Guid("3fd816cd-d07e-8f69-2829-b7789d23a438")].Value = value;}
			get {
                    if(@Object[new Guid("3fd816cd-d07e-8f69-2829-b7789d23a438")]==null || @Object[new Guid("3fd816cd-d07e-8f69-2829-b7789d23a438")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("3fd816cd-d07e-8f69-2829-b7789d23a438")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 00cf00f8-9335-2bf7-f9e1-6bd1fd4fb13d
			Description : Support group	
*/
		public ManagementPackEnumeration TierQueue
		{	
			set {@Object[new Guid("00cf00f8-9335-2bf7-f9e1-6bd1fd4fb13d")].Value = value;}
			get
			{
				if(@Object[new Guid("00cf00f8-9335-2bf7-f9e1-6bd1fd4fb13d")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("00cf00f8-9335-2bf7-f9e1-6bd1fd4fb13d")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 029dd446-c76c-ab37-a105-235da4f979dd
			Description : Title	
*/
		public string Title
		{	
			set {@Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value = value;}
			get {
                    if(@Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")]==null || @Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: af230625-9b6c-842f-e22e-06bd25326fa5
			Description : Urgency	
*/
		public ManagementPackEnumeration Urgency
		{	
			set {@Object[new Guid("af230625-9b6c-842f-e22e-06bd25326fa5")].Value = value;}
			get
			{
				if(@Object[new Guid("af230625-9b6c-842f-e22e-06bd25326fa5")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("af230625-9b6c-842f-e22e-06bd25326fa5")].Value;
				else
				return null;
			}
		}
#endregion
#region Relationships
         
        public IComposableProjection ResolvedByUserProjection
		{
			get{ return emop["RelatesToTroubleTicket"].FirstOrDefault(); }
		}    
            
		public string ResolvedByUserName  
		{
			get{
                var projection = emop["RelatesToTroubleTicket"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddResolvedByUser(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_WorkItem_IncidentClass.Relationships.System_WorkItem_TroubleTicketResolvedByUser;
					
			emop.Add(value, endPoint.Target);
		}
		
		public void AddBillableLogs(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_IncidentClass.Relationships.System_WorkItemHasBillableTime;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> BillableLogsProjection  
		{
			get{ return emop["AppliesToWorkItem"];}
		}
				
#endregion
		}// end tp class
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: ServiceManager.IncidentManagement.Library
			public class System_WorkItem_Incident_ProjectionType  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public System_WorkItem_Incident_ProjectionType(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("285cb0a2-f276-bccb-563e-bb721df7cdec");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("7b6d701a-4598-8220-dea8-4ae0504f6f58");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static System_WorkItem_Incident_ProjectionType Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, System_WorkItem_IncidentClass.GetManagementPackClass());	
					return new  System_WorkItem_Incident_ProjectionType(p);
				}
								
				public static System_WorkItem_Incident_ProjectionType Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.WorkItem.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.WorkItem.TroubleTicket']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("285cb0a2-f276-bccb-563e-bb721df7cdec"), property, id);
					return  new System_WorkItem_Incident_ProjectionType(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.DateTime	
			Id 			: 665ed498-2551-7559-dce8-493e1ea171df
			Description : Actual end date	
*/
		public DateTime? ActualEndDate
		{	
			set {@Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value = value;}
			get {
                    if(@Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")]==null || @Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: d3c9aa55-bbc0-964e-716b-99defdac4405
			Description : Actual start date	
*/
		public DateTime? ActualStartDate
		{	
			set {@Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value = value;}
			get {
                    if(@Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")]==null || @Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: c7a6ab7a-0b74-6848-02f7-79f7245662d1
			Description : Incident classification category	
*/
		public ManagementPackEnumeration Classification
		{	
			set {@Object[new Guid("c7a6ab7a-0b74-6848-02f7-79f7245662d1")].Value = value;}
			get
			{
				if(@Object[new Guid("c7a6ab7a-0b74-6848-02f7-79f7245662d1")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("c7a6ab7a-0b74-6848-02f7-79f7245662d1")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.DateTime	
			Id 			: 1d859e5b-0686-3ecc-0ef1-4cfce89a73fb
			Description : Closed date	
*/
		public DateTime? ClosedDate
		{	
			set {@Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")].Value = value;}
			get {
                    if(@Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")]==null || @Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d57cb7bc-d1d5-9614-0fe5-4002129da88b
			Description : Alternate contact method	
*/
		public string ContactMethod
		{	
			set {@Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value = value;}
			get {
                    if(@Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")]==null || @Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: ae5c5126-8937-8bdd-11f8-a7641bc06645
			Description : Created date	
*/
		public DateTime? CreatedDate
		{	
			set {@Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value = value;}
			get {
                    if(@Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")]==null || @Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: e5162c95-9469-924c-2298-9e351e0dc383
			Description : Description	
*/
		public string Description
		{	
			set {@Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value = value;}
			get {
                    if(@Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")]==null || @Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: 4e81b48c-0de6-9fc6-b0b8-f3ae96bf2df6
			Description : Escalated	
*/
		public bool? Escalated
		{	
			set {@Object[new Guid("4e81b48c-0de6-9fc6-b0b8-f3ae96bf2df6")].Value = value;}
			get
			{
				if(@Object[new Guid("4e81b48c-0de6-9fc6-b0b8-f3ae96bf2df6")] != null)
				return  (bool?) @Object[new Guid("4e81b48c-0de6-9fc6-b0b8-f3ae96bf2df6")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Boolean	
			Id 			: 1aab055e-b590-e9c8-c7e0-a99ad06443c7
			Description : Has created knowledge article	
*/
		public bool? HasCreatedKnowledgeArticle
		{	
			set {@Object[new Guid("1aab055e-b590-e9c8-c7e0-a99ad06443c7")].Value = value;}
			get
			{
				if(@Object[new Guid("1aab055e-b590-e9c8-c7e0-a99ad06443c7")] != null)
				return  (bool?) @Object[new Guid("1aab055e-b590-e9c8-c7e0-a99ad06443c7")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 28b1c58f-aefa-a449-7496-4805186bd94f
			Description : Work item ID	
*/
		public string Id
		{	
			set {@Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value = value;}
			get {
                    if(@Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")]==null || @Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: a74f8856-ffe2-fcad-67e0-38a7397336b5
			Description : Impact	
*/
		public ManagementPackEnumeration Impact
		{	
			set {@Object[new Guid("a74f8856-ffe2-fcad-67e0-38a7397336b5")].Value = value;}
			get
			{
				if(@Object[new Guid("a74f8856-ffe2-fcad-67e0-38a7397336b5")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("a74f8856-ffe2-fcad-67e0-38a7397336b5")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Enum	
			Id 			: d64785d9-16f0-67d5-23fc-c1047093cbf3
			Description : Last modified source	
*/
		public ManagementPackEnumeration LastModifiedSource
		{	
			set {@Object[new Guid("d64785d9-16f0-67d5-23fc-c1047093cbf3")].Value = value;}
			get
			{
				if(@Object[new Guid("d64785d9-16f0-67d5-23fc-c1047093cbf3")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("d64785d9-16f0-67d5-23fc-c1047093cbf3")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Boolean	
			Id 			: 68f93a71-ab0f-27fd-96ea-a1447117037a
			Description : Needs knowledge article	
*/
		public bool? NeedsKnowledgeArticle
		{	
			set {@Object[new Guid("68f93a71-ab0f-27fd-96ea-a1447117037a")].Value = value;}
			get
			{
				if(@Object[new Guid("68f93a71-ab0f-27fd-96ea-a1447117037a")] != null)
				return  (bool?) @Object[new Guid("68f93a71-ab0f-27fd-96ea-a1447117037a")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Int32	
			Id 			: 983ef3b4-1c7d-c05d-c28c-b89bc56426e2
			Description : Priority	
*/
		public int Priority
		{	
			set {@Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")].Value = value;}
			get {
                    if(@Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")]==null || @Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: ff6e5587-525c-3cd8-c508-fb44624de0fc
			Description : Resolution category	
*/
		public ManagementPackEnumeration ResolutionCategory
		{	
			set {@Object[new Guid("ff6e5587-525c-3cd8-c508-fb44624de0fc")].Value = value;}
			get
			{
				if(@Object[new Guid("ff6e5587-525c-3cd8-c508-fb44624de0fc")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("ff6e5587-525c-3cd8-c508-fb44624de0fc")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0
			Description : Resolution description	
*/
		public string ResolutionDescription
		{	
			set {@Object[new Guid("c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0")].Value = value;}
			get {
                    if(@Object[new Guid("c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0")]==null || @Object[new Guid("c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("c635d03a-8b13-fa7f-56e6-ff2f7e3e42c0")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: a1b981cb-fbec-d0df-6465-5212d0076435
			Description : Resolved date	
*/
		public DateTime? ResolvedDate
		{	
			set {@Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")].Value = value;}
			get {
                    if(@Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")]==null || @Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: 1d59dc56-995b-1884-beef-7663a0103e28
			Description : Scheduled end date	
*/
		public DateTime? ScheduledEndDate
		{	
			set {@Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value = value;}
			get {
                    if(@Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")]==null || @Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: fb3b75ce-5483-b5a0-7498-10c585cef3b4
			Description : Scheduled start date	
*/
		public DateTime? ScheduledStartDate
		{	
			set {@Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value = value;}
			get {
                    if(@Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")]==null || @Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 72e56ac1-4147-273f-655a-55dafa41ff97
			Description : Source	
*/
		public ManagementPackEnumeration Source
		{	
			set {@Object[new Guid("72e56ac1-4147-273f-655a-55dafa41ff97")].Value = value;}
			get
			{
				if(@Object[new Guid("72e56ac1-4147-273f-655a-55dafa41ff97")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("72e56ac1-4147-273f-655a-55dafa41ff97")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Enum	
			Id 			: b528d69d-987b-1f9d-6eed-4cced7f53b3c
			Description : Status	
*/
		public ManagementPackEnumeration Status
		{	
			set {@Object[new Guid("b528d69d-987b-1f9d-6eed-4cced7f53b3c")].Value = value;}
			get
			{
				if(@Object[new Guid("b528d69d-987b-1f9d-6eed-4cced7f53b3c")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("b528d69d-987b-1f9d-6eed-4cced7f53b3c")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.DateTime	
			Id 			: 3fd816cd-d07e-8f69-2829-b7789d23a438
			Description : Target resolution time	
*/
		public DateTime? TargetResolutionTime
		{	
			set {@Object[new Guid("3fd816cd-d07e-8f69-2829-b7789d23a438")].Value = value;}
			get {
                    if(@Object[new Guid("3fd816cd-d07e-8f69-2829-b7789d23a438")]==null || @Object[new Guid("3fd816cd-d07e-8f69-2829-b7789d23a438")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("3fd816cd-d07e-8f69-2829-b7789d23a438")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 00cf00f8-9335-2bf7-f9e1-6bd1fd4fb13d
			Description : Support group	
*/
		public ManagementPackEnumeration TierQueue
		{	
			set {@Object[new Guid("00cf00f8-9335-2bf7-f9e1-6bd1fd4fb13d")].Value = value;}
			get
			{
				if(@Object[new Guid("00cf00f8-9335-2bf7-f9e1-6bd1fd4fb13d")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("00cf00f8-9335-2bf7-f9e1-6bd1fd4fb13d")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 029dd446-c76c-ab37-a105-235da4f979dd
			Description : Title	
*/
		public string Title
		{	
			set {@Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value = value;}
			get {
                    if(@Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")]==null || @Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: af230625-9b6c-842f-e22e-06bd25326fa5
			Description : Urgency	
*/
		public ManagementPackEnumeration Urgency
		{	
			set {@Object[new Guid("af230625-9b6c-842f-e22e-06bd25326fa5")].Value = value;}
			get
			{
				if(@Object[new Guid("af230625-9b6c-842f-e22e-06bd25326fa5")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("af230625-9b6c-842f-e22e-06bd25326fa5")].Value;
				else
				return null;
			}
		}
#endregion
#region Relationships
         
        public IComposableProjection PrimaryOwnerProjection
		{
			get{ return emop["RelatesToIncident"].FirstOrDefault(); }
		}    
            
		public string PrimaryOwnerName  
		{
			get{
                var projection = emop["RelatesToIncident"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddPrimaryOwner(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_WorkItem_IncidentClass.Relationships.System_WorkItem_IncidentPrimaryOwner;
					
			emop.Add(value, endPoint.Target);
		}
		
         
        public IComposableProjection AffectedUserProjection
		{
			get{ return emop["RequestedWorkItem"].FirstOrDefault(); }
		}    
            
		public string AffectedUserName  
		{
			get{
                var projection = emop["RequestedWorkItem"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddAffectedUser(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_WorkItem_IncidentClass.Relationships.System_WorkItemAffectedUser;
					
			emop.Add(value, endPoint.Target);
		}
		
         
        public IComposableProjection AssignedUserProjection
		{
			get{ return emop["AssignedWorkItem"].FirstOrDefault(); }
		}    
            
		public string AssignedUserName  
		{
			get{
                var projection = emop["AssignedWorkItem"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddAssignedUser(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_WorkItem_IncidentClass.Relationships.System_WorkItemAssignedToUser;
					
			emop.Add(value, endPoint.Target);
		}
		
         
        public IComposableProjection CreatedByUserProjection
		{
			get{ return emop["CreatedWorkItem"].FirstOrDefault(); }
		}    
            
		public string CreatedByUserName  
		{
			get{
                var projection = emop["CreatedWorkItem"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddCreatedByUser(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_WorkItem_IncidentClass.Relationships.System_WorkItemCreatedByUser;
					
			emop.Add(value, endPoint.Target);
		}
		
         
        public IComposableProjection ClosedByUserProjection
		{
			get{ return emop["RelatesToTroubleTicket"].FirstOrDefault(); }
		}    
            
		public string ClosedByUserName  
		{
			get{
                var projection = emop["RelatesToTroubleTicket"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddClosedByUser(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_WorkItem_IncidentClass.Relationships.System_WorkItem_TroubleTicketClosedByUser;
					
			emop.Add(value, endPoint.Target);
		}
		
         
        public IComposableProjection ResolvedByUserProjection
		{
			get{ return emop["RelatesToTroubleTicket"].FirstOrDefault(); }
		}    
            
		public string ResolvedByUserName  
		{
			get{
                var projection = emop["RelatesToTroubleTicket"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddResolvedByUser(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_WorkItem_IncidentClass.Relationships.System_WorkItem_TroubleTicketResolvedByUser;
					
			emop.Add(value, endPoint.Target);
		}
		
		public void AddActionLogs(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_IncidentClass.Relationships.System_WorkItem_TroubleTicketHasActionLog;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> ActionLogsProjection  
		{
			get{ return emop["AppliesToTroubleTicket"];}
		}
				
		public void AddUserComments(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_IncidentClass.Relationships.System_WorkItem_TroubleTicketHasUserComment;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> UserCommentsProjection  
		{
			get{ return emop["AppliesToTroubleTicket"];}
		}
				
		public void AddAnalystComments(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_IncidentClass.Relationships.System_WorkItem_TroubleTicketHasAnalystComment;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> AnalystCommentsProjection  
		{
			get{ return emop["AppliesToTroubleTicket"];}
		}
				
		public void AddSMTPNotifications(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_IncidentClass.Relationships.System_WorkItem_TroubleTicketHasNotificationLog;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> SMTPNotificationsProjection  
		{
			get{ return emop["AppliesToTroubleTicket"];}
		}
				
		public void AddActivities(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_IncidentClass.Relationships.System_WorkItemContainsActivity;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> ActivitiesProjection  
		{
			get{ return emop["Activity"];}
		}
				
		public void AddRelatedWorkItems(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_IncidentClass.Relationships.System_WorkItemRelatesToWorkItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> RelatedWorkItemsProjection  
		{
			get{ return emop["RelatesToWorkItem_"];}
		}
				
		public void AddRelatedWorkItemsSource(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_IncidentClass.Relationships.System_WorkItemRelatesToWorkItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> RelatedWorkItemsSourceProjection  
		{
			get{ return emop["RelatesToWorkItem"];}
		}
				
		public void AddAffectedConfigItems(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_IncidentClass.Relationships.System_WorkItemAboutConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> AffectedConfigItemsProjection  
		{
			get{ return emop["HasRelatedWorkItems"];}
		}
				
		public void AddRelatedConfigItems(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_IncidentClass.Relationships.System_WorkItemRelatesToConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> RelatedConfigItemsProjection  
		{
			get{ return emop["RelatesToConfigItem"];}
		}
				
		public void AddRelatedServiceRequests(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_IncidentClass.Relationships.System_WorkItemAboutConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> RelatedServiceRequestsProjection  
		{
			get{ return emop["HasRelatedWorkItems"];}
		}
				
		public void AddRelatedKnowledgeArticles(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_IncidentClass.Relationships.System_EntityLinksToKnowledgeDocument;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> RelatedKnowledgeArticlesProjection  
		{
			get{ return emop["KnowledgeDocument"];}
		}
				
		public void AddFileAttachments(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_IncidentClass.Relationships.System_WorkItemHasFileAttachment;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> FileAttachmentsProjection  
		{
			get{ return emop["FileAttachment"];}
		}
				
#endregion
		}// end tp class
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: ServiceManager.IncidentManagement.Library
			public class System_FileAttachmentProjection  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public System_FileAttachmentProjection(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("42561c7a-5d16-a5fe-64f9-ffa5bbc6cdb5");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("7b6d701a-4598-8220-dea8-4ae0504f6f58");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static System_FileAttachmentProjection Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, System_FileAttachmentClass.GetManagementPackClass());	
					return new  System_FileAttachmentProjection(p);
				}
								
				public static System_FileAttachmentProjection Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.SupportingItem.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.Information']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("42561c7a-5d16-a5fe-64f9-ffa5bbc6cdb5"), property, id);
					return  new System_FileAttachmentProjection(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.DateTime	
			Id 			: b27d985e-8104-0789-7488-2106f22f77f1
			Description : Added Date	
*/
		public DateTime? AddedDate
		{	
			set {@Object[new Guid("b27d985e-8104-0789-7488-2106f22f77f1")].Value = value;}
			get {
                    if(@Object[new Guid("b27d985e-8104-0789-7488-2106f22f77f1")]==null || @Object[new Guid("b27d985e-8104-0789-7488-2106f22f77f1")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("b27d985e-8104-0789-7488-2106f22f77f1")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.IO.Stream	
			Id 			: 88aee6e7-0df7-2c06-a92d-8589864781d6
			Description : Content	
*/
		public Stream Content
		{	
			set {@Object[new Guid("88aee6e7-0df7-2c06-a92d-8589864781d6")].Value = value;}
			get {
                    if(@Object[new Guid("88aee6e7-0df7-2c06-a92d-8589864781d6")]==null || @Object[new Guid("88aee6e7-0df7-2c06-a92d-8589864781d6")].Value==null) 
                        return default(Stream) ;    
                    return (Stream) @Object[new Guid("88aee6e7-0df7-2c06-a92d-8589864781d6")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 47e9627e-114b-620b-f5e8-05b2dbabc842
			Description : Description	
*/
		public string Description
		{	
			set {@Object[new Guid("47e9627e-114b-620b-f5e8-05b2dbabc842")].Value = value;}
			get {
                    if(@Object[new Guid("47e9627e-114b-620b-f5e8-05b2dbabc842")]==null || @Object[new Guid("47e9627e-114b-620b-f5e8-05b2dbabc842")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("47e9627e-114b-620b-f5e8-05b2dbabc842")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 4fa82b7f-ab97-cdde-09c5-6236b186cf75
			Description : Extension	
*/
		public string Extension
		{	
			set {@Object[new Guid("4fa82b7f-ab97-cdde-09c5-6236b186cf75")].Value = value;}
			get {
                    if(@Object[new Guid("4fa82b7f-ab97-cdde-09c5-6236b186cf75")]==null || @Object[new Guid("4fa82b7f-ab97-cdde-09c5-6236b186cf75")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("4fa82b7f-ab97-cdde-09c5-6236b186cf75")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 0efde233-2432-1092-c049-b614b6e3e9bf
			Description : ID	
*/
		public string Id
		{	
			set {@Object[new Guid("0efde233-2432-1092-c049-b614b6e3e9bf")].Value = value;}
			get {
                    if(@Object[new Guid("0efde233-2432-1092-c049-b614b6e3e9bf")]==null || @Object[new Guid("0efde233-2432-1092-c049-b614b6e3e9bf")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("0efde233-2432-1092-c049-b614b6e3e9bf")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Int32	
			Id 			: a3e2fc65-7cca-d3e6-0b4d-f030dead9d7b
			Description : Size	
*/
		public int Size
		{	
			set {@Object[new Guid("a3e2fc65-7cca-d3e6-0b4d-f030dead9d7b")].Value = value;}
			get {
                    if(@Object[new Guid("a3e2fc65-7cca-d3e6-0b4d-f030dead9d7b")]==null || @Object[new Guid("a3e2fc65-7cca-d3e6-0b4d-f030dead9d7b")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("a3e2fc65-7cca-d3e6-0b4d-f030dead9d7b")].Value; 
                    
                }		
			
		}
#endregion
#region Relationships
         
        public IComposableProjection FileAttachmentAddedByProjection
		{
			get{ return emop["AddedBy"].FirstOrDefault(); }
		}    
            
		public string FileAttachmentAddedByName  
		{
			get{
                var projection = emop["AddedBy"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddFileAttachmentAddedBy(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_FileAttachmentClass.Relationships.System_FileAttachmentAddedByUser;
					
			emop.Add(value, endPoint.Target);
		}
		
#endregion
		}// end tp class
		}// end mp class
			public class ServiceManager_KnowledgeManagement_Library
			{
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: ServiceManager.KnowledgeManagement.Library
			public class System_Knowledge_ArticleProjection  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public System_Knowledge_ArticleProjection(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("c421d300-5c3e-621b-73e8-e85e37aae4b7");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("ecf7a65d-2c71-993e-c5c6-2d00264d68c2");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static System_Knowledge_ArticleProjection Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, System_Knowledge_ArticleClass.GetManagementPackClass());	
					return new  System_Knowledge_ArticleProjection(p);
				}
								
				public static System_Knowledge_ArticleProjection Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.ConfigItem']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("c421d300-5c3e-621b-73e8-e85e37aae4b7"), property, id);
					return  new System_Knowledge_ArticleProjection(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.String	
			Id 			: 9c8092e8-a729-9037-0944-56c668269ef0
			Description : The description of the knowledge article	
*/
		public string Abstract
		{	
			set {@Object[new Guid("9c8092e8-a729-9037-0944-56c668269ef0")].Value = value;}
			get {
                    if(@Object[new Guid("9c8092e8-a729-9037-0944-56c668269ef0")]==null || @Object[new Guid("9c8092e8-a729-9037-0944-56c668269ef0")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("9c8092e8-a729-9037-0944-56c668269ef0")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.IO.Stream	
			Id 			: 92debada-bade-5052-57b5-000e2070ff01
			Description : Content added by analysts	
*/
		public Stream AnalystContent
		{	
			set {@Object[new Guid("92debada-bade-5052-57b5-000e2070ff01")].Value = value;}
			get {
                    if(@Object[new Guid("92debada-bade-5052-57b5-000e2070ff01")]==null || @Object[new Guid("92debada-bade-5052-57b5-000e2070ff01")].Value==null) 
                        return default(Stream) ;    
                    return (Stream) @Object[new Guid("92debada-bade-5052-57b5-000e2070ff01")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 9583d0a2-ea9f-c97e-bdca-7356bd129777
			Description : Knowledge Article Identifier	
*/
		public string ArticleId
		{	
			set {@Object[new Guid("9583d0a2-ea9f-c97e-bdca-7356bd129777")].Value = value;}
			get {
                    if(@Object[new Guid("9583d0a2-ea9f-c97e-bdca-7356bd129777")]==null || @Object[new Guid("9583d0a2-ea9f-c97e-bdca-7356bd129777")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("9583d0a2-ea9f-c97e-bdca-7356bd129777")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 4b80c57f-c0e7-0626-b4cb-4b7ea7abf199
			Description : The user who owns the knowledge article	
*/
		public string ArticleOwner
		{	
			set {@Object[new Guid("4b80c57f-c0e7-0626-b4cb-4b7ea7abf199")].Value = value;}
			get {
                    if(@Object[new Guid("4b80c57f-c0e7-0626-b4cb-4b7ea7abf199")]==null || @Object[new Guid("4b80c57f-c0e7-0626-b4cb-4b7ea7abf199")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("4b80c57f-c0e7-0626-b4cb-4b7ea7abf199")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: a19f6466-3c9c-9207-affd-74bb3307399a
			Description : Knowledge Article Template	
*/
		public string ArticleTemplate
		{	
			set {@Object[new Guid("a19f6466-3c9c-9207-affd-74bb3307399a")].Value = value;}
			get {
                    if(@Object[new Guid("a19f6466-3c9c-9207-affd-74bb3307399a")]==null || @Object[new Guid("a19f6466-3c9c-9207-affd-74bb3307399a")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("a19f6466-3c9c-9207-affd-74bb3307399a")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: c3cf19b0-f426-661c-031d-fc45844924d8
			Description : The type of knowledge article, such as how-to or troubleshooting guide	
*/
		public ManagementPackEnumeration ArticleType
		{	
			set {@Object[new Guid("c3cf19b0-f426-661c-031d-fc45844924d8")].Value = value;}
			get
			{
				if(@Object[new Guid("c3cf19b0-f426-661c-031d-fc45844924d8")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("c3cf19b0-f426-661c-031d-fc45844924d8")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Enum	
			Id 			: a6b7ea8d-9423-8529-cb21-87ac1a21fdcb
			Description : Asset status	
*/
		public ManagementPackEnumeration AssetStatus
		{	
			set {@Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")].Value = value;}
			get
			{
				if(@Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("a6b7ea8d-9423-8529-cb21-87ac1a21fdcb")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Enum	
			Id 			: bffb5ae8-23a4-1372-69a6-56c33c88dc0c
			Description : The knowledge article category (for example, Enterprise Application or Networking)	
*/
		public ManagementPackEnumeration Category
		{	
			set {@Object[new Guid("bffb5ae8-23a4-1372-69a6-56c33c88dc0c")].Value = value;}
			get
			{
				if(@Object[new Guid("bffb5ae8-23a4-1372-69a6-56c33c88dc0c")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("bffb5ae8-23a4-1372-69a6-56c33c88dc0c")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: af00af04-4754-6f57-6e8c-8367753be806
			Description : Comments on the knowledge article	
*/
		public string Comments
		{	
			set {@Object[new Guid("af00af04-4754-6f57-6e8c-8367753be806")].Value = value;}
			get {
                    if(@Object[new Guid("af00af04-4754-6f57-6e8c-8367753be806")]==null || @Object[new Guid("af00af04-4754-6f57-6e8c-8367753be806")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("af00af04-4754-6f57-6e8c-8367753be806")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 0f46ff38-b47d-3f0b-fae2-7724b1f48112
			Description : The user who created the knowledge article	
*/
		public string CreatedBy
		{	
			set {@Object[new Guid("0f46ff38-b47d-3f0b-fae2-7724b1f48112")].Value = value;}
			get {
                    if(@Object[new Guid("0f46ff38-b47d-3f0b-fae2-7724b1f48112")]==null || @Object[new Guid("0f46ff38-b47d-3f0b-fae2-7724b1f48112")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("0f46ff38-b47d-3f0b-fae2-7724b1f48112")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: 3284d928-8538-94d3-ecd6-f01636f89f63
			Description : The date on which the knowledge article was created	
*/
		public DateTime? CreatedDate
		{	
			set {@Object[new Guid("3284d928-8538-94d3-ecd6-f01636f89f63")].Value = value;}
			get {
                    if(@Object[new Guid("3284d928-8538-94d3-ecd6-f01636f89f63")]==null || @Object[new Guid("3284d928-8538-94d3-ecd6-f01636f89f63")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("3284d928-8538-94d3-ecd6-f01636f89f63")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.IO.Stream	
			Id 			: 4b6bf092-d465-4fc3-b6a5-1e3ec9a5071c
			Description : End User Content	
*/
		public Stream EndUserContent
		{	
			set {@Object[new Guid("4b6bf092-d465-4fc3-b6a5-1e3ec9a5071c")].Value = value;}
			get {
                    if(@Object[new Guid("4b6bf092-d465-4fc3-b6a5-1e3ec9a5071c")]==null || @Object[new Guid("4b6bf092-d465-4fc3-b6a5-1e3ec9a5071c")].Value==null) 
                        return default(Stream) ;    
                    return (Stream) @Object[new Guid("4b6bf092-d465-4fc3-b6a5-1e3ec9a5071c")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 6c4fe2d6-9641-a649-5ea9-29e22f191a8f
			Description : URL for an external source of knowledge	
*/
		public string ExternalURL
		{	
			set {@Object[new Guid("6c4fe2d6-9641-a649-5ea9-29e22f191a8f")].Value = value;}
			get {
                    if(@Object[new Guid("6c4fe2d6-9641-a649-5ea9-29e22f191a8f")]==null || @Object[new Guid("6c4fe2d6-9641-a649-5ea9-29e22f191a8f")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("6c4fe2d6-9641-a649-5ea9-29e22f191a8f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d9272c03-900e-9169-931d-144bb5334c92
			Description : User-friendly name for the URL	
*/
		public string ExternalURLSource
		{	
			set {@Object[new Guid("d9272c03-900e-9169-931d-144bb5334c92")].Value = value;}
			get {
                    if(@Object[new Guid("d9272c03-900e-9169-931d-144bb5334c92")]==null || @Object[new Guid("d9272c03-900e-9169-931d-144bb5334c92")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d9272c03-900e-9169-931d-144bb5334c92")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 6c6c20b6-f471-84b5-0672-0a356e622596
			Description : Keywords associated with the knowledge article	
*/
		public string Keywords
		{	
			set {@Object[new Guid("6c6c20b6-f471-84b5-0672-0a356e622596")].Value = value;}
			get {
                    if(@Object[new Guid("6c6c20b6-f471-84b5-0672-0a356e622596")]==null || @Object[new Guid("6c6c20b6-f471-84b5-0672-0a356e622596")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("6c6c20b6-f471-84b5-0672-0a356e622596")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 55124dce-750d-bd54-4b92-d1fddf99adec
			Description : Notes	
*/
		public string Notes
		{	
			set {@Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value = value;}
			get {
                    if(@Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")]==null || @Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("55124dce-750d-bd54-4b92-d1fddf99adec")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 11927069-6957-dfcf-a277-08a784221325
			Description : Object status	
*/
		public ManagementPackEnumeration ObjectStatus
		{	
			set {@Object[new Guid("11927069-6957-dfcf-a277-08a784221325")].Value = value;}
			get
			{
				if(@Object[new Guid("11927069-6957-dfcf-a277-08a784221325")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("11927069-6957-dfcf-a277-08a784221325")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Int32	
			Id 			: dfe7dc0e-0c67-fd4a-ad57-bf18760bc558
			Description : Primary Locale ID	
*/
		public int PrimaryLocaleID
		{	
			set {@Object[new Guid("dfe7dc0e-0c67-fd4a-ad57-bf18760bc558")].Value = value;}
			get {
                    if(@Object[new Guid("dfe7dc0e-0c67-fd4a-ad57-bf18760bc558")]==null || @Object[new Guid("dfe7dc0e-0c67-fd4a-ad57-bf18760bc558")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("dfe7dc0e-0c67-fd4a-ad57-bf18760bc558")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 9ae0d83f-4100-c69b-f0f8-1321b0aebe4f
			Description : The status of the knowledge article (for example, draft or archived)	
*/
		public ManagementPackEnumeration Status
		{	
			set {@Object[new Guid("9ae0d83f-4100-c69b-f0f8-1321b0aebe4f")].Value = value;}
			get
			{
				if(@Object[new Guid("9ae0d83f-4100-c69b-f0f8-1321b0aebe4f")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("9ae0d83f-4100-c69b-f0f8-1321b0aebe4f")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Enum	
			Id 			: 558112fc-abf3-784e-bde3-28f0dc19391c
			Description : The flag associated with the knowledge article (for example, Top article or To complete)	
*/
		public ManagementPackEnumeration Tag
		{	
			set {@Object[new Guid("558112fc-abf3-784e-bde3-28f0dc19391c")].Value = value;}
			get
			{
				if(@Object[new Guid("558112fc-abf3-784e-bde3-28f0dc19391c")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("558112fc-abf3-784e-bde3-28f0dc19391c")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 9cbf1a45-0389-f20a-1cd6-2dfe461ab078
			Description : The title of the knowledge article	
*/
		public string Title
		{	
			set {@Object[new Guid("9cbf1a45-0389-f20a-1cd6-2dfe461ab078")].Value = value;}
			get {
                    if(@Object[new Guid("9cbf1a45-0389-f20a-1cd6-2dfe461ab078")]==null || @Object[new Guid("9cbf1a45-0389-f20a-1cd6-2dfe461ab078")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("9cbf1a45-0389-f20a-1cd6-2dfe461ab078")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: aee78772-3ac2-023c-3e3f-8a5998f575bd
			Description : An internal property used by the knowledge article class	
*/
		public string VendorArticleID
		{	
			set {@Object[new Guid("aee78772-3ac2-023c-3e3f-8a5998f575bd")].Value = value;}
			get {
                    if(@Object[new Guid("aee78772-3ac2-023c-3e3f-8a5998f575bd")]==null || @Object[new Guid("aee78772-3ac2-023c-3e3f-8a5998f575bd")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("aee78772-3ac2-023c-3e3f-8a5998f575bd")].Value; 
                    
                }		
			
		}
#endregion
#region Relationships
         
        public IComposableProjection RatingProjection
		{
			get{ return emop["Rating"].FirstOrDefault(); }
		}    
            
		public string RatingName  
		{
			get{
                var projection = emop["Rating"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddRating(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_Knowledge_ArticleClass.Relationships.System_Knowledge_DocumentHasAverageRating;
					
			emop.Add(value, endPoint.Target);
		}
		
         
        public IComposableProjection ArticleOwnerProjection
		{
			get{ return emop["OwnedBy"].FirstOrDefault(); }
		}    
            
		public string ArticleOwnerName  
		{
			get{
                var projection = emop["OwnedBy"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddArticleOwner(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_Knowledge_ArticleClass.Relationships.System_ConfigItemOwnedByUser;
					
			emop.Add(value, endPoint.Target);
		}
		
		public void AddImpactedWorkItem(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_Knowledge_ArticleClass.Relationships.System_WorkItemRelatesToConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> ImpactedWorkItemProjection  
		{
			get{ return emop["RelatesToWorkItem"];}
		}
				
		public void AddRelatedWorkItem(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_Knowledge_ArticleClass.Relationships.System_WorkItemAboutConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> RelatedWorkItemProjection  
		{
			get{ return emop["IsAboutConfigItems"];}
		}
				
		public void AddFileAttachment(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_Knowledge_ArticleClass.Relationships.System_ConfigItemHasFileAttachment;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> FileAttachmentProjection  
		{
			get{ return emop["FileAttachment"];}
		}
				
		public void AddRelatedConfigItem(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_Knowledge_ArticleClass.Relationships.System_ConfigItemRelatesToConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> RelatedConfigItemProjection  
		{
			get{ return emop["TargetConfigItem"];}
		}
				
		public void AddRelatedConfigItemSource(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_Knowledge_ArticleClass.Relationships.System_ConfigItemRelatesToConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> RelatedConfigItemSourceProjection  
		{
			get{ return emop["SourceConfigItem"];}
		}
				
		public void AddRelatedKnowledgeArticles(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_Knowledge_ArticleClass.Relationships.System_EntityLinksToKnowledgeDocument;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> RelatedKnowledgeArticlesProjection  
		{
			get{ return emop["KnowledgeDocument"];}
		}
				
		public void AddLinkedConfigItem(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_Knowledge_ArticleClass.Relationships.System_EntityLinksToKnowledgeDocument;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> LinkedConfigItemProjection  
		{
			get{ return emop["Entity"];}
		}
				
		public void AddLinkedWorkItem(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_Knowledge_ArticleClass.Relationships.System_EntityLinksToKnowledgeDocument;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> LinkedWorkItemProjection  
		{
			get{ return emop["Entity"];}
		}
				
#endregion
		}// end tp class
		}// end mp class
			public class ServiceManager_LinkingFramework_Library
			{
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: ServiceManager.LinkingFramework.Library
			public class System_LinkingFramework_DataConnector_Projection  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public System_LinkingFramework_DataConnector_Projection(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("4b1e00f8-1f3d-ad95-acdb-5587b3cf7147");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("72f46b77-512a-91b5-efd8-0c7f84ebda98");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static System_LinkingFramework_DataConnector_Projection Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, System_LinkingFramework_DataConnectorClass.GetManagementPackClass());	
					return new  System_LinkingFramework_DataConnector_Projection(p);
				}
								
				public static System_LinkingFramework_DataConnector_Projection Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.AdminItem.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.AdminItem']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("4b1e00f8-1f3d-ad95-acdb-5587b3cf7147"), property, id);
					return  new System_LinkingFramework_DataConnector_Projection(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.String	
			Id 			: 682e7331-cf98-986e-3cf3-271f77122b00
			Description : 	
*/
		public string DataConnectorName
		{	
			set {@Object[new Guid("682e7331-cf98-986e-3cf3-271f77122b00")].Value = value;}
			get {
                    if(@Object[new Guid("682e7331-cf98-986e-3cf3-271f77122b00")]==null || @Object[new Guid("682e7331-cf98-986e-3cf3-271f77122b00")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("682e7331-cf98-986e-3cf3-271f77122b00")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: 6918c673-1c7c-5870-61ae-417738aef77d
			Description : 	
*/
		public bool? DisableParallelProcess
		{	
			set {@Object[new Guid("6918c673-1c7c-5870-61ae-417738aef77d")].Value = value;}
			get
			{
				if(@Object[new Guid("6918c673-1c7c-5870-61ae-417738aef77d")] != null)
				return  (bool?) @Object[new Guid("6918c673-1c7c-5870-61ae-417738aef77d")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: ce038f0a-ccff-1ac0-5b13-39e71e748491
			Description : 	
*/
		public string EntryAssembly
		{	
			set {@Object[new Guid("ce038f0a-ccff-1ac0-5b13-39e71e748491")].Value = value;}
			get {
                    if(@Object[new Guid("ce038f0a-ccff-1ac0-5b13-39e71e748491")]==null || @Object[new Guid("ce038f0a-ccff-1ac0-5b13-39e71e748491")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("ce038f0a-ccff-1ac0-5b13-39e71e748491")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 115c3627-2121-ef80-7132-6185ec72eb85
			Description : 	
*/
		public string EntryPoint
		{	
			set {@Object[new Guid("115c3627-2121-ef80-7132-6185ec72eb85")].Value = value;}
			get {
                    if(@Object[new Guid("115c3627-2121-ef80-7132-6185ec72eb85")]==null || @Object[new Guid("115c3627-2121-ef80-7132-6185ec72eb85")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("115c3627-2121-ef80-7132-6185ec72eb85")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 16b8063b-37aa-0d15-a1dd-0fb9636b9713
			Description : 	
*/
		public string InstallSQLScripts
		{	
			set {@Object[new Guid("16b8063b-37aa-0d15-a1dd-0fb9636b9713")].Value = value;}
			get {
                    if(@Object[new Guid("16b8063b-37aa-0d15-a1dd-0fb9636b9713")]==null || @Object[new Guid("16b8063b-37aa-0d15-a1dd-0fb9636b9713")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("16b8063b-37aa-0d15-a1dd-0fb9636b9713")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: 50ba3d1b-48fd-6086-0be5-58fabd41368d
			Description : 	
*/
		public bool? IsProvider
		{	
			set {@Object[new Guid("50ba3d1b-48fd-6086-0be5-58fabd41368d")].Value = value;}
			get
			{
				if(@Object[new Guid("50ba3d1b-48fd-6086-0be5-58fabd41368d")] != null)
				return  (bool?) @Object[new Guid("50ba3d1b-48fd-6086-0be5-58fabd41368d")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 38d00f37-0aec-b0cd-da4f-d64cba3195a3
			Description : 	
*/
		public string Settings
		{	
			set {@Object[new Guid("38d00f37-0aec-b0cd-da4f-d64cba3195a3")].Value = value;}
			get {
                    if(@Object[new Guid("38d00f37-0aec-b0cd-da4f-d64cba3195a3")]==null || @Object[new Guid("38d00f37-0aec-b0cd-da4f-d64cba3195a3")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("38d00f37-0aec-b0cd-da4f-d64cba3195a3")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: dfe70eaf-10fb-3274-5ca0-e5367e46b0e0
			Description : 	
*/
		public string SolutionName
		{	
			set {@Object[new Guid("dfe70eaf-10fb-3274-5ca0-e5367e46b0e0")].Value = value;}
			get {
                    if(@Object[new Guid("dfe70eaf-10fb-3274-5ca0-e5367e46b0e0")]==null || @Object[new Guid("dfe70eaf-10fb-3274-5ca0-e5367e46b0e0")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("dfe70eaf-10fb-3274-5ca0-e5367e46b0e0")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 32c6a261-f221-ebbd-56b2-83337ae6ec16
			Description : 	
*/
		public string UninstallSQLScripts
		{	
			set {@Object[new Guid("32c6a261-f221-ebbd-56b2-83337ae6ec16")].Value = value;}
			get {
                    if(@Object[new Guid("32c6a261-f221-ebbd-56b2-83337ae6ec16")]==null || @Object[new Guid("32c6a261-f221-ebbd-56b2-83337ae6ec16")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("32c6a261-f221-ebbd-56b2-83337ae6ec16")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: e1eb52ec-7a87-7774-9db0-17a7748e6a5e
			Description : 	
*/
		public string WebUIAssembly
		{	
			set {@Object[new Guid("e1eb52ec-7a87-7774-9db0-17a7748e6a5e")].Value = value;}
			get {
                    if(@Object[new Guid("e1eb52ec-7a87-7774-9db0-17a7748e6a5e")]==null || @Object[new Guid("e1eb52ec-7a87-7774-9db0-17a7748e6a5e")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("e1eb52ec-7a87-7774-9db0-17a7748e6a5e")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 61f95c9e-e699-6305-87cc-6f2b47e2d5e0
			Description : 	
*/
		public string WinFormUIAssembly
		{	
			set {@Object[new Guid("61f95c9e-e699-6305-87cc-6f2b47e2d5e0")].Value = value;}
			get {
                    if(@Object[new Guid("61f95c9e-e699-6305-87cc-6f2b47e2d5e0")]==null || @Object[new Guid("61f95c9e-e699-6305-87cc-6f2b47e2d5e0")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("61f95c9e-e699-6305-87cc-6f2b47e2d5e0")].Value; 
                    
                }		
			
		}
#endregion
#region Relationships
		public void AddDataTable(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_LinkingFramework_DataConnectorClass.Relationships.System_LinkingFramework_ConnectorEmbedsTables;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> DataTableProjection  
		{
			get{ return emop["DataTable"];}
		}
				
		public void AddDataCollection(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_LinkingFramework_DataConnectorClass.Relationships.System_LinkingFramework_ConnectorEmbedsCollections;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> DataCollectionProjection  
		{
			get{ return emop["DataCollection"];}
		}
				
#endregion
		}// end tp class
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: ServiceManager.LinkingFramework.Library
			public class Microsoft_SystemCenter_LinkingFramework_SyncStatus_Projection  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public Microsoft_SystemCenter_LinkingFramework_SyncStatus_Projection(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("7b2359a4-5ff2-ef18-6c33-ede4987fba1f");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("72f46b77-512a-91b5-efd8-0c7f84ebda98");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static Microsoft_SystemCenter_LinkingFramework_SyncStatus_Projection Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, System_LinkingFramework_DataSourceClass.GetManagementPackClass());	
					return new  Microsoft_SystemCenter_LinkingFramework_SyncStatus_Projection(p);
				}
								
				public static Microsoft_SystemCenter_LinkingFramework_SyncStatus_Projection Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("Microsoft.SystemCenter.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!Microsoft.SystemCenter.Connector']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("7b2359a4-5ff2-ef18-6c33-ede4987fba1f"), property, id);
					return  new Microsoft_SystemCenter_LinkingFramework_SyncStatus_Projection(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.String	
			Id 			: 2ec1da07-1dc8-2bbd-f03c-01de8cea5b86
			Description : Display name for a data provider	
*/
		public string DataProviderDisplayName
		{	
			set {@Object[new Guid("2ec1da07-1dc8-2bbd-f03c-01de8cea5b86")].Value = value;}
			get {
                    if(@Object[new Guid("2ec1da07-1dc8-2bbd-f03c-01de8cea5b86")]==null || @Object[new Guid("2ec1da07-1dc8-2bbd-f03c-01de8cea5b86")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("2ec1da07-1dc8-2bbd-f03c-01de8cea5b86")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: ed85f7bf-14ab-cc7b-e028-c9191cbc1396
			Description : Internal name for a data provider	
*/
		public string DataProviderName
		{	
			set {@Object[new Guid("ed85f7bf-14ab-cc7b-e028-c9191cbc1396")].Value = value;}
			get {
                    if(@Object[new Guid("ed85f7bf-14ab-cc7b-e028-c9191cbc1396")]==null || @Object[new Guid("ed85f7bf-14ab-cc7b-e028-c9191cbc1396")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("ed85f7bf-14ab-cc7b-e028-c9191cbc1396")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 97e296af-af3e-7507-fd7b-a9adcac50b39
			Description : Name for a data warehouse profile	
*/
		public string DatawarehouseProfileName
		{	
			set {@Object[new Guid("97e296af-af3e-7507-fd7b-a9adcac50b39")].Value = value;}
			get {
                    if(@Object[new Guid("97e296af-af3e-7507-fd7b-a9adcac50b39")]==null || @Object[new Guid("97e296af-af3e-7507-fd7b-a9adcac50b39")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("97e296af-af3e-7507-fd7b-a9adcac50b39")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 0a6e2ad0-d84a-9641-58e3-abba4511bb79
			Description : Connector Description	
*/
		public string Description
		{	
			set {@Object[new Guid("0a6e2ad0-d84a-9641-58e3-abba4511bb79")].Value = value;}
			get {
                    if(@Object[new Guid("0a6e2ad0-d84a-9641-58e3-abba4511bb79")]==null || @Object[new Guid("0a6e2ad0-d84a-9641-58e3-abba4511bb79")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("0a6e2ad0-d84a-9641-58e3-abba4511bb79")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: 89b6c2dd-4f07-0f86-a18d-72401ea57f32
			Description : Is Discovery Data Managed	
*/
		public bool? DiscoveryDataIsManaged
		{	
			set {@Object[new Guid("89b6c2dd-4f07-0f86-a18d-72401ea57f32")].Value = value;}
			get
			{
				if(@Object[new Guid("89b6c2dd-4f07-0f86-a18d-72401ea57f32")] != null)
				return  (bool?) @Object[new Guid("89b6c2dd-4f07-0f86-a18d-72401ea57f32")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Boolean	
			Id 			: 802345ee-2e7b-af9e-469f-612945ce3b81
			Description : Is Discovery Data Shared	
*/
		public bool? DiscoveryDataIsShared
		{	
			set {@Object[new Guid("802345ee-2e7b-af9e-469f-612945ce3b81")].Value = value;}
			get
			{
				if(@Object[new Guid("802345ee-2e7b-af9e-469f-612945ce3b81")] != null)
				return  (bool?) @Object[new Guid("802345ee-2e7b-af9e-469f-612945ce3b81")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: 071beb6b-2706-cf0c-646b-a0627949ed77
			Description : Indicates whether the data source is enabled	
*/
		public bool? Enabled
		{	
			set {@Object[new Guid("071beb6b-2706-cf0c-646b-a0627949ed77")].Value = value;}
			get
			{
				if(@Object[new Guid("071beb6b-2706-cf0c-646b-a0627949ed77")] != null)
				return  (bool?) @Object[new Guid("071beb6b-2706-cf0c-646b-a0627949ed77")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 29906075-e9fc-7bc4-487b-f964f91d6532
			Description : Connector ID	
*/
		public string Id
		{	
			set {@Object[new Guid("29906075-e9fc-7bc4-487b-f964f91d6532")].Value = value;}
			get {
                    if(@Object[new Guid("29906075-e9fc-7bc4-487b-f964f91d6532")]==null || @Object[new Guid("29906075-e9fc-7bc4-487b-f964f91d6532")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("29906075-e9fc-7bc4-487b-f964f91d6532")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: 04586e4f-8cb7-47e2-451d-5b4bbc46c0f2
			Description : Indicates whether Impersonation is enabled	
*/
		public bool? ImpersonationEnabled
		{	
			set {@Object[new Guid("04586e4f-8cb7-47e2-451d-5b4bbc46c0f2")].Value = value;}
			get
			{
				if(@Object[new Guid("04586e4f-8cb7-47e2-451d-5b4bbc46c0f2")] != null)
				return  (bool?) @Object[new Guid("04586e4f-8cb7-47e2-451d-5b4bbc46c0f2")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: fd39fd0e-a9df-9509-33b9-ba0f2d9bd215
			Description : Connector Name	
*/
		public string Name
		{	
			set {@Object[new Guid("fd39fd0e-a9df-9509-33b9-ba0f2d9bd215")].Value = value;}
			get {
                    if(@Object[new Guid("fd39fd0e-a9df-9509-33b9-ba0f2d9bd215")]==null || @Object[new Guid("fd39fd0e-a9df-9509-33b9-ba0f2d9bd215")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("fd39fd0e-a9df-9509-33b9-ba0f2d9bd215")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: ec211248-c0f6-9351-ce8f-91f1c1153cf3
			Description : Name for data reader profile	
*/
		public string ReaderProfileName
		{	
			set {@Object[new Guid("ec211248-c0f6-9351-ce8f-91f1c1153cf3")].Value = value;}
			get {
                    if(@Object[new Guid("ec211248-c0f6-9351-ce8f-91f1c1153cf3")]==null || @Object[new Guid("ec211248-c0f6-9351-ce8f-91f1c1153cf3")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("ec211248-c0f6-9351-ce8f-91f1c1153cf3")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 184ff35b-951e-c7c4-049b-62e9e34c30f3
			Description : Reserved	
*/
		public string Reserved
		{	
			set {@Object[new Guid("184ff35b-951e-c7c4-049b-62e9e34c30f3")].Value = value;}
			get {
                    if(@Object[new Guid("184ff35b-951e-c7c4-049b-62e9e34c30f3")]==null || @Object[new Guid("184ff35b-951e-c7c4-049b-62e9e34c30f3")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("184ff35b-951e-c7c4-049b-62e9e34c30f3")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d4d65911-a399-9146-16aa-d726cb1c1a1b
			Description : Name for a data synchronization solution	
*/
		public string SolutionName
		{	
			set {@Object[new Guid("d4d65911-a399-9146-16aa-d726cb1c1a1b")].Value = value;}
			get {
                    if(@Object[new Guid("d4d65911-a399-9146-16aa-d726cb1c1a1b")]==null || @Object[new Guid("d4d65911-a399-9146-16aa-d726cb1c1a1b")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d4d65911-a399-9146-16aa-d726cb1c1a1b")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Int32	
			Id 			: a58ca650-77b3-34cf-24a9-2fb1fb6a5e19
			Description : Interval for data synchronization	
*/
		public int SyncInterval
		{	
			set {@Object[new Guid("a58ca650-77b3-34cf-24a9-2fb1fb6a5e19")].Value = value;}
			get {
                    if(@Object[new Guid("a58ca650-77b3-34cf-24a9-2fb1fb6a5e19")]==null || @Object[new Guid("a58ca650-77b3-34cf-24a9-2fb1fb6a5e19")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("a58ca650-77b3-34cf-24a9-2fb1fb6a5e19")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: b712e0ea-ef36-a12f-4848-b953fb9a511e
			Description : Indicates data synchronization will be started immediately	
*/
		public bool? SyncNow
		{	
			set {@Object[new Guid("b712e0ea-ef36-a12f-4848-b953fb9a511e")].Value = value;}
			get
			{
				if(@Object[new Guid("b712e0ea-ef36-a12f-4848-b953fb9a511e")] != null)
				return  (bool?) @Object[new Guid("b712e0ea-ef36-a12f-4848-b953fb9a511e")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.DateTime	
			Id 			: 3b968d84-5783-b073-a9d5-122ad0ae6456
			Description : Time for data synchronization	
*/
		public DateTime? SyncTime
		{	
			set {@Object[new Guid("3b968d84-5783-b073-a9d5-122ad0ae6456")].Value = value;}
			get {
                    if(@Object[new Guid("3b968d84-5783-b073-a9d5-122ad0ae6456")]==null || @Object[new Guid("3b968d84-5783-b073-a9d5-122ad0ae6456")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("3b968d84-5783-b073-a9d5-122ad0ae6456")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: a22cd6fc-e822-c134-3ff4-158cd21d3771
			Description : Type of data synchronization	
*/
		public ManagementPackEnumeration SyncType
		{	
			set {@Object[new Guid("a22cd6fc-e822-c134-3ff4-158cd21d3771")].Value = value;}
			get
			{
				if(@Object[new Guid("a22cd6fc-e822-c134-3ff4-158cd21d3771")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("a22cd6fc-e822-c134-3ff4-158cd21d3771")].Value;
				else
				return null;
			}
		}
#endregion
#region Relationships
         
        public IComposableProjection SyncStatusProjection
		{
			get{ return emop["SyncStatus"].FirstOrDefault(); }
		}    
            
		public string SyncStatusName  
		{
			get{
                var projection = emop["SyncStatus"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddSyncStatus(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_LinkingFramework_DataSourceClass.Relationships.Microsoft_SystemCenter_LinkingFramework_DataSourceHostSyncStatus;
					
			emop.Add(value, endPoint.Target);
		}
		
#endregion
		}// end tp class
		}// end mp class
			public class ServiceManager_ProblemManagement_Configuration
			{
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: ServiceManager.ProblemManagement.Configuration
			public class System_WorkItem_ProblemViewProjection  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public System_WorkItem_ProblemViewProjection(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("f1aa331a-fa46-59ad-e3aa-6f03050ec463");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("bdde5d97-f65b-24d0-3e07-d7bf586aeae5");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static System_WorkItem_ProblemViewProjection Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, System_WorkItem_ProblemClass.GetManagementPackClass());	
					return new  System_WorkItem_ProblemViewProjection(p);
				}
								
				public static System_WorkItem_ProblemViewProjection Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.WorkItem.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.WorkItem.TroubleTicket']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("f1aa331a-fa46-59ad-e3aa-6f03050ec463"), property, id);
					return  new System_WorkItem_ProblemViewProjection(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.DateTime	
			Id 			: 665ed498-2551-7559-dce8-493e1ea171df
			Description : Actual end date	
*/
		public DateTime? ActualEndDate
		{	
			set {@Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value = value;}
			get {
                    if(@Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")]==null || @Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: d3c9aa55-bbc0-964e-716b-99defdac4405
			Description : Actual start date	
*/
		public DateTime? ActualStartDate
		{	
			set {@Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value = value;}
			get {
                    if(@Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")]==null || @Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: 9f72a895-81d2-bde9-0e04-38c0dc12b906
			Description : Auto-resolve all incidents associated with this problem	
*/
		public bool? AutoResolve
		{	
			set {@Object[new Guid("9f72a895-81d2-bde9-0e04-38c0dc12b906")].Value = value;}
			get
			{
				if(@Object[new Guid("9f72a895-81d2-bde9-0e04-38c0dc12b906")] != null)
				return  (bool?) @Object[new Guid("9f72a895-81d2-bde9-0e04-38c0dc12b906")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Enum	
			Id 			: 847241ac-5e64-e3a2-1c78-01714e31f094
			Description : Classification	
*/
		public ManagementPackEnumeration Classification
		{	
			set {@Object[new Guid("847241ac-5e64-e3a2-1c78-01714e31f094")].Value = value;}
			get
			{
				if(@Object[new Guid("847241ac-5e64-e3a2-1c78-01714e31f094")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("847241ac-5e64-e3a2-1c78-01714e31f094")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.DateTime	
			Id 			: 1d859e5b-0686-3ecc-0ef1-4cfce89a73fb
			Description : Closed date	
*/
		public DateTime? ClosedDate
		{	
			set {@Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")].Value = value;}
			get {
                    if(@Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")]==null || @Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d57cb7bc-d1d5-9614-0fe5-4002129da88b
			Description : Alternate contact method	
*/
		public string ContactMethod
		{	
			set {@Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value = value;}
			get {
                    if(@Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")]==null || @Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: ae5c5126-8937-8bdd-11f8-a7641bc06645
			Description : Created date	
*/
		public DateTime? CreatedDate
		{	
			set {@Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value = value;}
			get {
                    if(@Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")]==null || @Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: e5162c95-9469-924c-2298-9e351e0dc383
			Description : Description	
*/
		public string Description
		{	
			set {@Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value = value;}
			get {
                    if(@Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")]==null || @Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d1c50a8d-7375-28a1-35f5-108dee05a1c4
			Description : Error Description	
*/
		public string ErrorDescription
		{	
			set {@Object[new Guid("d1c50a8d-7375-28a1-35f5-108dee05a1c4")].Value = value;}
			get {
                    if(@Object[new Guid("d1c50a8d-7375-28a1-35f5-108dee05a1c4")]==null || @Object[new Guid("d1c50a8d-7375-28a1-35f5-108dee05a1c4")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d1c50a8d-7375-28a1-35f5-108dee05a1c4")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 28b1c58f-aefa-a449-7496-4805186bd94f
			Description : Work item ID	
*/
		public string Id
		{	
			set {@Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value = value;}
			get {
                    if(@Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")]==null || @Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: a74f8856-ffe2-fcad-67e0-38a7397336b5
			Description : Impact	
*/
		public ManagementPackEnumeration Impact
		{	
			set {@Object[new Guid("a74f8856-ffe2-fcad-67e0-38a7397336b5")].Value = value;}
			get
			{
				if(@Object[new Guid("a74f8856-ffe2-fcad-67e0-38a7397336b5")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("a74f8856-ffe2-fcad-67e0-38a7397336b5")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Boolean	
			Id 			: 9a03fd17-3b54-2601-72b0-e49e3d711266
			Description : Known Error	
*/
		public bool? KnownError
		{	
			set {@Object[new Guid("9a03fd17-3b54-2601-72b0-e49e3d711266")].Value = value;}
			get
			{
				if(@Object[new Guid("9a03fd17-3b54-2601-72b0-e49e3d711266")] != null)
				return  (bool?) @Object[new Guid("9a03fd17-3b54-2601-72b0-e49e3d711266")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Int32	
			Id 			: 983ef3b4-1c7d-c05d-c28c-b89bc56426e2
			Description : Priority	
*/
		public int Priority
		{	
			set {@Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")].Value = value;}
			get {
                    if(@Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")]==null || @Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: 1b39815a-ada2-9062-8965-db23339e5e56
			Description : Requires Major Problem Review	
*/
		public bool? RequiresMajorProblemReview
		{	
			set {@Object[new Guid("1b39815a-ada2-9062-8965-db23339e5e56")].Value = value;}
			get
			{
				if(@Object[new Guid("1b39815a-ada2-9062-8965-db23339e5e56")] != null)
				return  (bool?) @Object[new Guid("1b39815a-ada2-9062-8965-db23339e5e56")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Enum	
			Id 			: 9ec7b8e2-7078-771e-eaaa-cade20c82c4f
			Description : Resolution Category	
*/
		public ManagementPackEnumeration Resolution
		{	
			set {@Object[new Guid("9ec7b8e2-7078-771e-eaaa-cade20c82c4f")].Value = value;}
			get
			{
				if(@Object[new Guid("9ec7b8e2-7078-771e-eaaa-cade20c82c4f")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("9ec7b8e2-7078-771e-eaaa-cade20c82c4f")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: dfb8df38-8d4f-71b4-44e0-23ac65cef070
			Description : Resolution description	
*/
		public string ResolutionDescription
		{	
			set {@Object[new Guid("dfb8df38-8d4f-71b4-44e0-23ac65cef070")].Value = value;}
			get {
                    if(@Object[new Guid("dfb8df38-8d4f-71b4-44e0-23ac65cef070")]==null || @Object[new Guid("dfb8df38-8d4f-71b4-44e0-23ac65cef070")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("dfb8df38-8d4f-71b4-44e0-23ac65cef070")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: a1b981cb-fbec-d0df-6465-5212d0076435
			Description : Resolved date	
*/
		public DateTime? ResolvedDate
		{	
			set {@Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")].Value = value;}
			get {
                    if(@Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")]==null || @Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 6a535d3e-503e-09fe-ea3c-52aec02ae841
			Description : Review Notes	
*/
		public string ReviewNotes
		{	
			set {@Object[new Guid("6a535d3e-503e-09fe-ea3c-52aec02ae841")].Value = value;}
			get {
                    if(@Object[new Guid("6a535d3e-503e-09fe-ea3c-52aec02ae841")]==null || @Object[new Guid("6a535d3e-503e-09fe-ea3c-52aec02ae841")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("6a535d3e-503e-09fe-ea3c-52aec02ae841")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: 1d59dc56-995b-1884-beef-7663a0103e28
			Description : Scheduled end date	
*/
		public DateTime? ScheduledEndDate
		{	
			set {@Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value = value;}
			get {
                    if(@Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")]==null || @Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: fb3b75ce-5483-b5a0-7498-10c585cef3b4
			Description : Scheduled start date	
*/
		public DateTime? ScheduledStartDate
		{	
			set {@Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value = value;}
			get {
                    if(@Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")]==null || @Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 70818193-7344-ab63-4760-2ac08ec846c4
			Description : Source	
*/
		public ManagementPackEnumeration Source
		{	
			set {@Object[new Guid("70818193-7344-ab63-4760-2ac08ec846c4")].Value = value;}
			get
			{
				if(@Object[new Guid("70818193-7344-ab63-4760-2ac08ec846c4")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("70818193-7344-ab63-4760-2ac08ec846c4")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Enum	
			Id 			: 0c489de5-4e51-c4dc-4ce9-ce8137ce1a26
			Description : Status	
*/
		public ManagementPackEnumeration Status
		{	
			set {@Object[new Guid("0c489de5-4e51-c4dc-4ce9-ce8137ce1a26")].Value = value;}
			get
			{
				if(@Object[new Guid("0c489de5-4e51-c4dc-4ce9-ce8137ce1a26")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("0c489de5-4e51-c4dc-4ce9-ce8137ce1a26")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 029dd446-c76c-ab37-a105-235da4f979dd
			Description : Title	
*/
		public string Title
		{	
			set {@Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value = value;}
			get {
                    if(@Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")]==null || @Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: af230625-9b6c-842f-e22e-06bd25326fa5
			Description : Urgency	
*/
		public ManagementPackEnumeration Urgency
		{	
			set {@Object[new Guid("af230625-9b6c-842f-e22e-06bd25326fa5")].Value = value;}
			get
			{
				if(@Object[new Guid("af230625-9b6c-842f-e22e-06bd25326fa5")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("af230625-9b6c-842f-e22e-06bd25326fa5")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 64a534e6-830e-c3cb-5493-35abca0b260d
			Description : Workarounds	
*/
		public string Workarounds
		{	
			set {@Object[new Guid("64a534e6-830e-c3cb-5493-35abca0b260d")].Value = value;}
			get {
                    if(@Object[new Guid("64a534e6-830e-c3cb-5493-35abca0b260d")]==null || @Object[new Guid("64a534e6-830e-c3cb-5493-35abca0b260d")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("64a534e6-830e-c3cb-5493-35abca0b260d")].Value; 
                    
                }		
			
		}
#endregion
#region Relationships
         
        public IComposableProjection AssignedToProjection
		{
			get{ return emop["AssignedWorkItem"].FirstOrDefault(); }
		}    
            
		public string AssignedToName  
		{
			get{
                var projection = emop["AssignedWorkItem"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddAssignedTo(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_WorkItem_ProblemClass.Relationships.System_WorkItemAssignedToUser;
					
			emop.Add(value, endPoint.Target);
		}
		
#endregion
		}// end tp class
		}// end mp class
			public class ServiceManager_ProblemManagement_Library
			{
			
			// You can create an inherited projection and you can create an inherited projection
			// but you cannot "get" one because you cannot cast the TP to the subclass
			// I agree this sucks but what are you going to do?
				
			// Source Managementpack Name: ServiceManager.ProblemManagement.Library
			public class System_WorkItem_Problem_ProjectionType  
			{
		 		private EnterpriseManagementObjectProjection emop;

		        private EnterpriseManagementObject @Object
		        {
		            get { return emop.Object; } 
		        }
					
				public EnterpriseManagementObjectProjection Projection
		        {
		            get { return emop; } 
		        }
		        
		        public System_WorkItem_Problem_ProjectionType(EnterpriseManagementObjectProjection _emop)
		        {
		            emop = _emop;
		        }
                
             
					
				public static Guid ProjectionId
				{
				  get{return new Guid("45c1c404-f3fe-1050-dcef-530e1c2533e1");}
				}
					
				public static ManagementPack ManagementPack 
				{
					// using SCSMServer for cache
					get { return SCSMServer.GetManagementPack("b6bc43b6-49dc-fa34-40cc-b2c1dc8bc61c");}
				}
			
				public void ApplyTemplate(ManagementPackObjectTemplate template)
				{
					emop.ApplyTemplate(template);
				}
					
				public void Commit()
				{
					emop.Commit();
				}
					
				public void Overwrite()
				{
					emop.Overwrite();
				}
					
				public static System_WorkItem_Problem_ProjectionType Create()
				{
					var p = new EnterpriseManagementObjectProjection(SCSMServer.CurrentManagementGroup, System_WorkItem_ProblemClass.GetManagementPackClass());	
					return new  System_WorkItem_Problem_ProjectionType(p);
				}
								
				public static System_WorkItem_Problem_ProjectionType Get(string id)
				{
				
				
					var builder = new ProjectionCriteriaBuilder();
					builder.AddReferences("System.WorkItem.Library", "MPRef");
					var property = "$Target/Property[Type='MPRef!System.WorkItem.TroubleTicket']/Id$";
					var criteria = builder.CreateSimpleCriteria(SCSMServer.GetTypeProjection("45c1c404-f3fe-1050-dcef-530e1c2533e1"), property, id);
					return  new System_WorkItem_Problem_ProjectionType(SCSMServer.GetObjectProjectionReader(criteria, ObjectQueryOptions.Default).FirstOrDefault());				
				}
				
#region Properties
/*
			DataType 	: System.DateTime	
			Id 			: 665ed498-2551-7559-dce8-493e1ea171df
			Description : Actual end date	
*/
		public DateTime? ActualEndDate
		{	
			set {@Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value = value;}
			get {
                    if(@Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")]==null || @Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("665ed498-2551-7559-dce8-493e1ea171df")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: d3c9aa55-bbc0-964e-716b-99defdac4405
			Description : Actual start date	
*/
		public DateTime? ActualStartDate
		{	
			set {@Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value = value;}
			get {
                    if(@Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")]==null || @Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("d3c9aa55-bbc0-964e-716b-99defdac4405")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: 9f72a895-81d2-bde9-0e04-38c0dc12b906
			Description : Auto-resolve all incidents associated with this problem	
*/
		public bool? AutoResolve
		{	
			set {@Object[new Guid("9f72a895-81d2-bde9-0e04-38c0dc12b906")].Value = value;}
			get
			{
				if(@Object[new Guid("9f72a895-81d2-bde9-0e04-38c0dc12b906")] != null)
				return  (bool?) @Object[new Guid("9f72a895-81d2-bde9-0e04-38c0dc12b906")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Enum	
			Id 			: 847241ac-5e64-e3a2-1c78-01714e31f094
			Description : Classification	
*/
		public ManagementPackEnumeration Classification
		{	
			set {@Object[new Guid("847241ac-5e64-e3a2-1c78-01714e31f094")].Value = value;}
			get
			{
				if(@Object[new Guid("847241ac-5e64-e3a2-1c78-01714e31f094")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("847241ac-5e64-e3a2-1c78-01714e31f094")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.DateTime	
			Id 			: 1d859e5b-0686-3ecc-0ef1-4cfce89a73fb
			Description : Closed date	
*/
		public DateTime? ClosedDate
		{	
			set {@Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")].Value = value;}
			get {
                    if(@Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")]==null || @Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("1d859e5b-0686-3ecc-0ef1-4cfce89a73fb")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d57cb7bc-d1d5-9614-0fe5-4002129da88b
			Description : Alternate contact method	
*/
		public string ContactMethod
		{	
			set {@Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value = value;}
			get {
                    if(@Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")]==null || @Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d57cb7bc-d1d5-9614-0fe5-4002129da88b")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: ae5c5126-8937-8bdd-11f8-a7641bc06645
			Description : Created date	
*/
		public DateTime? CreatedDate
		{	
			set {@Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value = value;}
			get {
                    if(@Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")]==null || @Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("ae5c5126-8937-8bdd-11f8-a7641bc06645")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: e5162c95-9469-924c-2298-9e351e0dc383
			Description : Description	
*/
		public string Description
		{	
			set {@Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value = value;}
			get {
                    if(@Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")]==null || @Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("e5162c95-9469-924c-2298-9e351e0dc383")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: afb4f9e6-bf48-1737-76ad-c9b3ec325b97
			Description : Display name of the object.	
*/
		public string DisplayName
		{	
			set {@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value = value;}
			get {
                    if(@Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")]==null || @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("afb4f9e6-bf48-1737-76ad-c9b3ec325b97")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: d1c50a8d-7375-28a1-35f5-108dee05a1c4
			Description : Error Description	
*/
		public string ErrorDescription
		{	
			set {@Object[new Guid("d1c50a8d-7375-28a1-35f5-108dee05a1c4")].Value = value;}
			get {
                    if(@Object[new Guid("d1c50a8d-7375-28a1-35f5-108dee05a1c4")]==null || @Object[new Guid("d1c50a8d-7375-28a1-35f5-108dee05a1c4")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("d1c50a8d-7375-28a1-35f5-108dee05a1c4")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 28b1c58f-aefa-a449-7496-4805186bd94f
			Description : Work item ID	
*/
		public string Id
		{	
			set {@Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value = value;}
			get {
                    if(@Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")]==null || @Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("28b1c58f-aefa-a449-7496-4805186bd94f")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: a74f8856-ffe2-fcad-67e0-38a7397336b5
			Description : Impact	
*/
		public ManagementPackEnumeration Impact
		{	
			set {@Object[new Guid("a74f8856-ffe2-fcad-67e0-38a7397336b5")].Value = value;}
			get
			{
				if(@Object[new Guid("a74f8856-ffe2-fcad-67e0-38a7397336b5")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("a74f8856-ffe2-fcad-67e0-38a7397336b5")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Boolean	
			Id 			: 9a03fd17-3b54-2601-72b0-e49e3d711266
			Description : Known Error	
*/
		public bool? KnownError
		{	
			set {@Object[new Guid("9a03fd17-3b54-2601-72b0-e49e3d711266")].Value = value;}
			get
			{
				if(@Object[new Guid("9a03fd17-3b54-2601-72b0-e49e3d711266")] != null)
				return  (bool?) @Object[new Guid("9a03fd17-3b54-2601-72b0-e49e3d711266")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Int32	
			Id 			: 983ef3b4-1c7d-c05d-c28c-b89bc56426e2
			Description : Priority	
*/
		public int Priority
		{	
			set {@Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")].Value = value;}
			get {
                    if(@Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")]==null || @Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")].Value==null) 
                        return default(int) ;    
                    return (int) @Object[new Guid("983ef3b4-1c7d-c05d-c28c-b89bc56426e2")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Boolean	
			Id 			: 1b39815a-ada2-9062-8965-db23339e5e56
			Description : Requires Major Problem Review	
*/
		public bool? RequiresMajorProblemReview
		{	
			set {@Object[new Guid("1b39815a-ada2-9062-8965-db23339e5e56")].Value = value;}
			get
			{
				if(@Object[new Guid("1b39815a-ada2-9062-8965-db23339e5e56")] != null)
				return  (bool?) @Object[new Guid("1b39815a-ada2-9062-8965-db23339e5e56")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Enum	
			Id 			: 9ec7b8e2-7078-771e-eaaa-cade20c82c4f
			Description : Resolution Category	
*/
		public ManagementPackEnumeration Resolution
		{	
			set {@Object[new Guid("9ec7b8e2-7078-771e-eaaa-cade20c82c4f")].Value = value;}
			get
			{
				if(@Object[new Guid("9ec7b8e2-7078-771e-eaaa-cade20c82c4f")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("9ec7b8e2-7078-771e-eaaa-cade20c82c4f")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: dfb8df38-8d4f-71b4-44e0-23ac65cef070
			Description : Resolution description	
*/
		public string ResolutionDescription
		{	
			set {@Object[new Guid("dfb8df38-8d4f-71b4-44e0-23ac65cef070")].Value = value;}
			get {
                    if(@Object[new Guid("dfb8df38-8d4f-71b4-44e0-23ac65cef070")]==null || @Object[new Guid("dfb8df38-8d4f-71b4-44e0-23ac65cef070")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("dfb8df38-8d4f-71b4-44e0-23ac65cef070")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: a1b981cb-fbec-d0df-6465-5212d0076435
			Description : Resolved date	
*/
		public DateTime? ResolvedDate
		{	
			set {@Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")].Value = value;}
			get {
                    if(@Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")]==null || @Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("a1b981cb-fbec-d0df-6465-5212d0076435")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.String	
			Id 			: 6a535d3e-503e-09fe-ea3c-52aec02ae841
			Description : Review Notes	
*/
		public string ReviewNotes
		{	
			set {@Object[new Guid("6a535d3e-503e-09fe-ea3c-52aec02ae841")].Value = value;}
			get {
                    if(@Object[new Guid("6a535d3e-503e-09fe-ea3c-52aec02ae841")]==null || @Object[new Guid("6a535d3e-503e-09fe-ea3c-52aec02ae841")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("6a535d3e-503e-09fe-ea3c-52aec02ae841")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: 1d59dc56-995b-1884-beef-7663a0103e28
			Description : Scheduled end date	
*/
		public DateTime? ScheduledEndDate
		{	
			set {@Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value = value;}
			get {
                    if(@Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")]==null || @Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("1d59dc56-995b-1884-beef-7663a0103e28")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.DateTime	
			Id 			: fb3b75ce-5483-b5a0-7498-10c585cef3b4
			Description : Scheduled start date	
*/
		public DateTime? ScheduledStartDate
		{	
			set {@Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value = value;}
			get {
                    if(@Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")]==null || @Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value==null) 
                        return default(DateTime?) ;    
                    return (DateTime?) @Object[new Guid("fb3b75ce-5483-b5a0-7498-10c585cef3b4")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: 70818193-7344-ab63-4760-2ac08ec846c4
			Description : Source	
*/
		public ManagementPackEnumeration Source
		{	
			set {@Object[new Guid("70818193-7344-ab63-4760-2ac08ec846c4")].Value = value;}
			get
			{
				if(@Object[new Guid("70818193-7344-ab63-4760-2ac08ec846c4")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("70818193-7344-ab63-4760-2ac08ec846c4")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.Enum	
			Id 			: 0c489de5-4e51-c4dc-4ce9-ce8137ce1a26
			Description : Status	
*/
		public ManagementPackEnumeration Status
		{	
			set {@Object[new Guid("0c489de5-4e51-c4dc-4ce9-ce8137ce1a26")].Value = value;}
			get
			{
				if(@Object[new Guid("0c489de5-4e51-c4dc-4ce9-ce8137ce1a26")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("0c489de5-4e51-c4dc-4ce9-ce8137ce1a26")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 029dd446-c76c-ab37-a105-235da4f979dd
			Description : Title	
*/
		public string Title
		{	
			set {@Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value = value;}
			get {
                    if(@Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")]==null || @Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("029dd446-c76c-ab37-a105-235da4f979dd")].Value; 
                    
                }		
			
		}
/*
			DataType 	: System.Enum	
			Id 			: af230625-9b6c-842f-e22e-06bd25326fa5
			Description : Urgency	
*/
		public ManagementPackEnumeration Urgency
		{	
			set {@Object[new Guid("af230625-9b6c-842f-e22e-06bd25326fa5")].Value = value;}
			get
			{
				if(@Object[new Guid("af230625-9b6c-842f-e22e-06bd25326fa5")] != null)
				return  (ManagementPackEnumeration) @Object[new Guid("af230625-9b6c-842f-e22e-06bd25326fa5")].Value;
				else
				return null;
			}
		}
/*
			DataType 	: System.String	
			Id 			: 64a534e6-830e-c3cb-5493-35abca0b260d
			Description : Workarounds	
*/
		public string Workarounds
		{	
			set {@Object[new Guid("64a534e6-830e-c3cb-5493-35abca0b260d")].Value = value;}
			get {
                    if(@Object[new Guid("64a534e6-830e-c3cb-5493-35abca0b260d")]==null || @Object[new Guid("64a534e6-830e-c3cb-5493-35abca0b260d")].Value==null) 
                        return default(string) ;    
                    return (string) @Object[new Guid("64a534e6-830e-c3cb-5493-35abca0b260d")].Value; 
                    
                }		
			
		}
#endregion
#region Relationships
         
        public IComposableProjection AssignedToProjection
		{
			get{ return emop["AssignedWorkItem"].FirstOrDefault(); }
		}    
            
		public string AssignedToName  
		{
			get{
                var projection = emop["AssignedWorkItem"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddAssignedTo(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_WorkItem_ProblemClass.Relationships.System_WorkItemAssignedToUser;
					
			emop.Add(value, endPoint.Target);
		}
		
         
        public IComposableProjection CreatedByProjection
		{
			get{ return emop["CreatedWorkItem"].FirstOrDefault(); }
		}    
            
		public string CreatedByName  
		{
			get{
                var projection = emop["CreatedWorkItem"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddCreatedBy(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_WorkItem_ProblemClass.Relationships.System_WorkItemCreatedByUser;
					
			emop.Add(value, endPoint.Target);
		}
		
         
        public IComposableProjection ResolvedByProjection
		{
			get{ return emop["RelatesToTroubleTicket"].FirstOrDefault(); }
		}    
            
		public string ResolvedByName  
		{
			get{
                var projection = emop["RelatesToTroubleTicket"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddResolvedBy(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_WorkItem_ProblemClass.Relationships.System_WorkItem_TroubleTicketResolvedByUser;
					
			emop.Add(value, endPoint.Target);
		}
		
         
        public IComposableProjection ClosedByProjection
		{
			get{ return emop["RelatesToTroubleTicket"].FirstOrDefault(); }
		}    
            
		public string ClosedByName  
		{
			get{
                var projection = emop["RelatesToTroubleTicket"].FirstOrDefault();
                if(projection == null)
                    return string.Empty;
                else
                    return projection.Object.DisplayName;
                
                }
		}
		public void AddClosedBy(EnterpriseManagementObject value) 
		{
			if(value==null)  
				throw new ArgumentNullException("value cannot be null");
			
			var endPoint = System_WorkItem_ProblemClass.Relationships.System_WorkItem_TroubleTicketClosedByUser;
					
			emop.Add(value, endPoint.Target);
		}
		
		public void AddActionLog(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_ProblemClass.Relationships.System_WorkItem_TroubleTicketHasActionLog;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> ActionLogProjection  
		{
			get{ return emop["AppliesToTroubleTicket"];}
		}
				
		public void AddComment(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_ProblemClass.Relationships.System_WorkItem_TroubleTicketHasAnalystComment;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> CommentProjection  
		{
			get{ return emop["AppliesToTroubleTicket"];}
		}
				
		public void AddAffectedServices(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_ProblemClass.Relationships.System_WorkItemAboutConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> AffectedServicesProjection  
		{
			get{ return emop["HasRelatedWorkItems"];}
		}
				
		public void AddAffectedConfigItems(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_ProblemClass.Relationships.System_WorkItemAboutConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> AffectedConfigItemsProjection  
		{
			get{ return emop["HasRelatedWorkItems"];}
		}
				
		public void AddRelatedWorkItems(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_ProblemClass.Relationships.System_WorkItemRelatesToWorkItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> RelatedWorkItemsProjection  
		{
			get{ return emop["RelatesToWorkItem_"];}
		}
				
		public void AddRelatedWorkItemsSource(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_ProblemClass.Relationships.System_WorkItemRelatesToWorkItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> RelatedWorkItemsSourceProjection  
		{
			get{ return emop["RelatesToWorkItem"];}
		}
				
		public void AddRelatedConfigItems(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_ProblemClass.Relationships.System_WorkItemRelatesToConfigItem;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> RelatedConfigItemsProjection  
		{
			get{ return emop["RelatesToConfigItem"];}
		}
				
		public void AddLinkedKnowledgeArticles(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_ProblemClass.Relationships.System_EntityLinksToKnowledgeDocument;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> LinkedKnowledgeArticlesProjection  
		{
			get{ return emop["KnowledgeDocument"];}
		}
				
		public void AddFileAttachments(EnterpriseManagementObject value)
		{
			if(value==null)
				throw new ArgumentNullException("value cannot be null");
                        
				var endPoint = System_WorkItem_ProblemClass.Relationships.System_WorkItemHasFileAttachment;

			emop.Add(value, endPoint.Target);
        }
		public IList<IComposableProjection> FileAttachmentsProjection  
		{
			get{ return emop["FileAttachment"];}
		}
				
#endregion
		}// end tp class
		}// end mp class
			public class ServiceManager_ServiceMaps_Library
			{
		}// end mp class
			public class ServiceManager_WorkItem_Library
			{
		}// end mp class
}